
Задание 6.
Составьте блок-схему и напишите программу. В заданную упорядоченную в лексикографическом (алфавитном) порядке последовательность слов вставьте новое заданное слово так, чтобы лексикографический порядок сохранился.
Решение:аааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааа
Листинг:
program a6;
uses crt;
type dim=array[1..6] of string;
const a:dim= ('арбуз','вагон','дом','комод','степь','ящик') ;
var
b:array[1..7] of string;
s:string;
i,j,n:integer;
begin
n:=6;
writeln('Вставка нового слова ');
writeln('----------------------');
writeln('Исходный массив слов ');
for i:=1 to n do
write(a[i]:10);
writeln;
write('Ввести слово --> ');
readln(s);
for i:=1 to n do
b[i]:=a[i];
b[n+1]:=s;
for i:=1 to n do
for j:=i+1 to n+1 do
if b[i] > b[j] then
begin s:=b[i]; b[i]:=b[j]; b[j]:=s end;
writeln('Результат вставки');
for i:=1 to n+1 do
write(b[i]:10);
writeln;
writeln('konec');
readln;
end.
Алгоритм:
Тестовый пример:
Проверка:
Задание 7.
Составьте блок-схему и напишите программу. Определите, имеется ли в заданном массиве A(N) хотя бы одна пара соседних чисел, являющихся взаимно-обратными.
Решение:аааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааа
Листинг:
program a7;
uses crt;
var
i,j,n:integer;
f:boolean;
a:array[1..100] of integer;
b:integer;
begin
write('Poisk vzaimnoobratnix sosednix par ');
write('Vvesti razmer massiva --> '); readln(n);
for i:=1 to n do begin
write('vvesti ocherednoe chislo ');
readln(a[i]);
end;
writeln;
f:=true;
for i:=1 to n-1 do begin
b:=(a[i+1] mod 10)*10 + (a[i+1] div 10);
if a[i]= b then begin f:=false; writeln('para ',a[i]:4,' i ',a[i+1]:4);end;
end;
if f then writeln('vzaimno obratnix par net ');
writeln('konec');
readln;
end.
Алгоритм:
Тестовый пример:
Проверка:
Задание 8.
Напишите программу, демонстрирующую строительство многоэтажного дома. Количество этажей задается пользователем.
Решение:аааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааа
Алгоритм:
Листинг:
program a8;
uses crt,graphabc;
var i,a,b,c:integer;
begin
//textsize(15);
writeln('Postroenie doma');
writeln('---------------');
write('Vvesti chislo etajey -->');
readln(a);
for i:=1 to a+1 do
begin
Rectangle(100,500-i*50,500,450-i*50);
delay(400);
end;
end.
Тестовый пример:
Проверка: