- •2) Сведения о численном методе.
- •3)Листинг программы:
- •4)Блок схема:
- •5) Трассировка:
- •2) Сведения о численном методе.
- •3)Листинг программы:
- •4)Блок схема:
- •5) Трассировка:
- •2) Сведения о численном методе.
- •3)Листинг программы:
- •4)Блок схема:
- •5) Трассировка:
- •2) Сведения о численном методе.
- •3)Листинг программы:
- •4)Блок схема:
- •5) Трассировка:
- •2) Сведения о численном методе.
- •3)Листинг программы:
- •4)Блок схема:
- •4) Трассировка:
План отчета по алгоритмизации.
Отчет Петровой Ксении Викторовны
Группа 21115
Вариант г, номер задания 5(а).
1) Цель: Дан целочисленный массив размера N. Вывести вначале все содержащиеся в данном массиве четные числа в порядке возрастания их индексов, а затем - все нечетные числа в порядке убывания их индексов.
2) Сведения о численном методе.
Массивы:
a: array [1..10] of char - объявление одномерного массива,
состоящего из 10 элементов типа "символ".
b: array [1..10, 1..10] of real - двухмерный массив дробных чисел.
Пример ввода n элементов массива:
for i:=1 to n do
begin
writeln('введите',i,'-элемент массива');
readln(matrix[i]);
end;
Ввод пользовательских типов данных в Pascal: В Pascal кроме стандартных типов (real, integer и др.) программист
может вводить свои. Свой тип данных может быть полезен для создания вложенных типов данных (например, сложных массивов), а также (не в последнюю очередь) для уменьшения программного кода.
Program ...
uses ...
type myarr = array [1..10] of integer;
var a,b,c: myarr;
Begin
...
End.
3)Листинг программы:
program Project1;
{$mode objfpc}{$H+}
uses crt;
var
mas: array of integer;
N, i: integer;
begin
ClrScr;
write('Vvedite razmer massiva N = ');
readln(N);
SetLength(mas, N);
writeln('Vvedite massiv iz ', N, ' chisel:');
for i:=0 to N-1 do
begin
read(mas[i]);
end;
writeln('Chetnie v poryadke vozrastaniya indexov: ');
for i:=0 to N-1 do
begin
if mas[i] mod 2 = 0
then
write(mas[i], ' ');
end;
writeln();
writeln('Nechetnie v poryadke ubivaniya indexov: ');
for i:=N-1 downto 0 do
begin
if mas[i] mod 2 = 1
then
write(mas[i], ' ');
end;
Repeat Until keypressed
end.
2)Блок схема:
3) Трассировка:
4)Вывод: написала программу для выведения вначале всех содержащиеся в данном массиве четных чисел в порядке возрастания их индексов, а затем - всех нечетных чисел в порядке убывания их индексов.
План отчета по алгоритмизации.
Отчет Петровой Ксении Викторовны
Группа 21115
Вариант г, номер задания 5(б).
1) Цель: Дан целочисленный массив размера N. Если он является перестановкой, то есть содержит все числа от 1 до N, то вывести 0; в противном случае вывести номер первого недопустимого элемента.
2) Сведения о численном методе.
Массивы:
a: array [1..10] of char - объявление одномерного массива,
состоящего из 10 элементов типа "символ".
b: array [1..10, 1..10] of real - двухмерный массив дробных чисел.
Пример ввода n элементов массива:
for i:=1 to n do
begin
writeln('введите',i,'-элемент массива');
readln(matrix[i]);
end;
Ввод пользовательских типов данных в Pascal: В Pascal кроме стандартных типов (real, integer и др.) программист
может вводить свои. Свой тип данных может быть полезен для создания вложенных типов данных (например, сложных массивов), а также (не в последнюю очередь) для уменьшения программного кода.
Program ...
uses ...
type myarr = array [1..10] of integer;
var a,b,c: myarr;
Begin
...
End.
3)Листинг программы:
program Project1;
{$mode objfpc}{$H+}
uses crt;
var
j,i:integer;
N:integer;
a: array [1..10] of integer;
bol:boolean;
begin
writeln('Vedite N (N<=10)');
readln(N);
for i:=1 to n do begin write('a[',i,']=');
readln(A[i]);
end;
bol:=false;
for i:=1 to n do
begin
if (a[i]>N)or(a[i]<1)then bol:=true;
for j:=i+1 to n do
begin
if a[i]=a[j] then bol:=true;
end;
if bol then
begin
writeln('Nomer pervogo nedopustimogo elementa= ',i);
break;
end;
end;
if not bol then writeln('Otvet = ',0);
Начло
end.
4)Блок схема:
Ведите N (N<=10)
i:=1
i<=N
A[i]
i:=i+1
bol:=false
i:=1
i<=N
Нет
Да
a[i]>N or
a[i]<1
bol:=true
i:=i+1
Нет
Да
bol
Вывод i
Вывод 0
Нет
Да
Not bol
Конец
5) Трассировка:
6)Вывод: написала программ для целочисленный массив размера N. Если он является перестановкой, то есть содержит все числа от 1 до N, то вывести 0; в противном случае вывести номер первого недопустимого элемента.
План отчета по алгоритмизации.
Отчет Петровой Ксении Викторовны
Группа 21115
Вариант в, номер задания 6(а).
1) Цель: Описать процедуру SortInc3(A, B, C), меняющую содержимое переменных A, B, C таким образом, чтобы их значения оказались упорядоченными по возрастанию (A, B, C - вещественные параметры, являющиеся одновременно входными и выходными). С помощью этой процедуры упорядочить по возрастанию два данных набора из трех чисел: (A1, B1, C1) и (A2, B2, C2).
2) Сведения о численном методе.
Program ...
uses ...
var ... - описание глобальных переменных
Function name(xl[,xl1,...]:<type>):<type>;
var ... - описание локальных переменных
Begin
...
End;
Begin - основной блок программы
...
s:= name(xg[,xg1,...]); - вызов функции с глобальными параметрами
...
End.
xg и xl - глобальные и локальные переменные.
xg и xl могут иметь одинаковые имена.
3)Листинг программы:
program Project1;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes
{ you can add units after this };
Var A1,B1,C1,A2,B2,C2:integer;
Procedure SortDec(Var A,B,C:integer);
Var t:integer;
Begin
Repeat
if A<B then
Begin
t:=A;
A:=B;
B:=t;
End;
if B<C then
Begin
t:=B;
B:=C;
C:=t;
End;
Until (A>B)and(B>C);
End;
Begin
write('Vedite A1,B1,C1: ');readln(A1,B1,C1);
write('Vedite A2,B2,C2: ');readln(A2,B2,C2);
SortDec(A1,B1,C1);
writeln('A1,B1,C1: ',A1:3,B1:3,C1:3);
SortDec(A2,B2,C2);
writeln('A2,B2,C2: ',A2:3,B2:3,C2:3);
readln;
End.
