Решить любые 2 задачи, пожалуйста!!! или хотя бы одну в PASKALe 1. Найти те элементы массива, которые равны сумме двух своих соседей. Первый и последний элемент имеют только по одному соседу, поэтому искомыми быть не могут. На ...
Решить любые 2 задачи, пожалуйста!!! или хотя бы одну в PASKALe
1. Найти те элементы массива, которые равны сумме двух своих соседей. Первый и последний элемент имеют только по одному соседу, поэтому искомыми быть не могут.
На вход программе сначало подается значение n<=100 – количество элементов в массиве. В следующей строке расположены сами элементы массива – целые числа, по модулю не превосходящие 10000. Выдайте значения искомых элементов массива в том же порядке, в каком они располагались во входных данных.
2. На вход программе подается последовательность чисел от 1 до 9, заканчивающаяся нулем. Всего будет введено не более 100000 чисел. Подсчитайте в этой последовательности количество единиц, количество двоек, количество троек и т.д. и выдайте результат. В выходных данных всегда должно быть 9 чисел.
3. Текст на английском языке запишите в массив a[1..1000] of char. Помимо английских букв в нем могут встречаться пробелы и знаки препинания. В массиве b [‘A’ ..’Z’’] of integer получите сведения о том, сколько и каких букв встречается в этом тексте. При подсчете строчные и прописные буквы не различать. На вход программе подается значение n<=1000 – количество символов в тексте. В следующей строке входных данных расположены сами символы (без разделителей). Выдайте 26 чисел – значения элементов массива b.
Пример
Входные данные
Выходные данные
12
Hello world!
0 0 0 1 1 0 0 1 0 0 0 3 0 0 2 0 0 1 0 0 0 0 1 0 0 0
4. Подсчитайте за один проход, сколько его элементов равны максимальному элементу.
На вход программе сначала подается значение n<=100 – количество элементов в массиве. В следующей строке входных данных расположены сами элементы массива – целые числа, по модулю не превосходящие 30000. Выдайте количество искомых элементов массива.
5. В массиве, заполненным произвольными целыми числами, найдите два числа, произведение которых максимально. Вложенные циклы не используйте. На вход программе сначала подается значение n<=10000 – количество элементов в массиве. В следующей строке входных данных расположены сами элементы – целые числа, по модулю не превосходящие 30000. Выдайте два искомых числа в порядке неубывания.
6. На вход программе сначала подается значение n<=100 – количество элементов в массиве. В следующей строке входных данных расположены сами элементы массива – целые числа, по модулю не превосходящие 30000. Распечатайте только те значения элементов массива, которые встречаются в нем ровно один раз. Элементы следует распечатывать в том порядке, в котором они встречаются в массиве.
Ответ(ы) на вопрос:
end; var c:char; a:array[0..9] of cifry; i,j:byte; x:cifry; begin for i:=0 to 9 do begin a[i].zn:=i; a[i].vs:=0; end; writeln('Введите последовательность цифр, окончание точка:'); repeat c:=readkey; if c in cf then begin write(c); inc(a[ord(c)-48].vs); end; if c='.' then writeln until c='.'; for i:=0 to 8 do for j:=i+1 to 9 do if (a[i].vs>a[j].vs)or((a[i].vs=a[j].vs)and(a[i].zn>a[j].zn)) then begin x:=a[i]; a[i]:=a[j]; a[j]:=x; end; for i:=0 to 9 do if a[i].vs>0 then write(a[i].zn); end.const n = 100; var arr: array[1..n] of integer; i, m, qty: byte; begin write('Количество элементов массива: '); readln(m); write('Элементы массива через пробел: '); for i:=1 to m do read(arr[i]); readln; qty := 0; i := 2; while i < m do if (arr[i] > arr[i-1]) and (arr[i] > arr[i+1]) then begin qty := qty + 1; i := i + 2 end else i := i + 1; writeln('Кол-во элементов, которые больше соседей: ', qty); readln; end.
№ 2
var
n,i,j:integer;
s,s1:string;
begin
readln(S);
for n:=1 to 9 do
begin
str(n,s1);
for i:=1 to length(S) do
if s[i]=s1 then
inc(j);
writeln('Цифр ',n,' всего ',j);
j:=0;
end;end.
№4
var
a:array[1..100] of integer;
kmax,max,i,n:integer;
begin
readln(n);
read (a[1]);
max:=a[1];
kmax:=1;
for i:=2 to n do
begin
read(a[i]);
if a[i]=max then
inc(kmax);
if a[i]>max then
begin
max:=a[i];
kmax:=1;
end;
end;
writeln;
writeln('Максимальное число =',max,' В массиве оно встречается ',kmax,' раз');
end.
Не нашли ответ?
Похожие вопросы