Консультация № 137655
20.05.2008, 19:48
0.00 руб.
0 2 2
Уважаемые эксперты помоги написать программки.
Цикл.
Одноклеточная амеба каждые 3 часа делиться на 2 клетки. Определить, сколько клеток будет через 3,6,9,12, …24 часа.
Двумерный массив.
Сформулировать квадратную матрицу 7х7 по заданному образцу
1*2 0 0 0 0 0
0 2*3 0 0 0 0
0 0 3*4 0 0 0
0 0 0 4*5 0 0
0 0 0 0 5*6 0
0 0 0 0 0 6*7
Строки.
Строка содержит произвольный русский текст. Определить каких букв в нем больше: гласных или согласных.
Подпрограмма.
Дан одномерный массив, выполнить следующие действия:
Создать массив четных чисел массива, если таких чисел нет, то вывести сообшение об этом.
Указать наибольшую длину числовой оси, содержащую все элементы массива.
Заменить все элементы массива, больше заданного Z, этим числом, подсчитать количество замен.
Определить количество элементов массива, расположенных пред первым нулевым элементом.

Обсуждение

давно
Старший Модератор
31795
6196
20.05.2008, 22:44
общий
это ответ
Здравствуйте, Львов Алексей Владимирович !

Первые две задачи в приложении.
Удачи!

Приложение:
const n=6;var a,b:integer; c:array[1..n,1..n]of integer;begin {1} a:=1; for b:=1 to 8 do begin a:=a*2;{считаем и выводим количество} writeln(b*3:5,a:5); end; {2} for a:=1 to n do begin for b:=1 to n do begin{формируем массив} c[a,b]:=ord(a=b)*b*(a+1); write(c[a,b]:3);{и выводим его} end; writeln; end;end.
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

давно
Профессор
401888
1232
21.05.2008, 10:33
общий
это ответ
Здравствуйте, Львов Алексей Владимирович !
По задаче 4.
Поскольку подпрограммы используются один раз и только для решения конкретного массива, все переменные объявляем как глобальные, а процедуры и функции оформляем без формальных параметров. Код с пояснениями в приложении.
Задача 3 очень простая, но лень писать.Порядок такой:
Uses crt;
Const gl=[‘А‘,‘а‘,...все гласные большие и маленькие];
Sgl=[‘Б‘,‘б‘,...все согласные];
Var s:string;
I,kgl,ksgl:integer;
Begin
Clrscr;
Write(‘s: ‘);readln(s);
Kgl:=0;ksgl:=0;
For i:=1 to length(s) do
Begin
If s[i] in gl then
Begin
Kgl:=kgl+1;
End
Else if s[i] in sgl then
Begin
Ksgl:=ksgl+1;
End;
End;
If kgl>ksgl then writeln(‘glasnyh bolshe!‘)
Else If ksgl>kgl then writeln(‘soglasnyh bolshe!‘)
Else writeln(Porovnu!);
Readln
End.



Приложение:
Задача 4.uses crt;type Tmas=array[1..100]of integer;var a,b:Tmas; n,i,Z,k:integer;procedure Chet;{создание массива четных чисел}var m:integer;beginm:=0;for i:=1 to n doif a[i] mod 2=0 then {если число четное} begin m:=m+1; {считаем его} b[m]:=a[i]; {включаем в новый массив} end;if m=0 then writeln(‘Chetnyh elementov net!‘);for i:=1 to m dowrite(b[i],‘ ‘); {выводим его на экран}writeln;end;function Dlina:integer; {определение длины числовой оси}var min,max:integer;beginmin:=a[1];max:=a[1];for i:=2 to n do begin if a[i]<min then min:=a[i] {находим максимальный} else if a[i]>max then max:=a[i]; {находим минимальный} end;Dlina:=max-min; {вычисляем длину}end;procedure Zam; {делаем замену по условию}begink:=0;for i:=1 to n doif a[i]>Z then {если больше Z} begin k:=k+1; {считаем} a[i]:=Z; {заменяем} end;for i:=1 to ndo write(a[i],‘ ‘); {выводим на экран}writeln;writeln(‘Kolichestvo zamen=‘,k);end;procedure Nul; {определяем количество элементов до нуля}begini:=1;k:=0;while a[i]<>0 do {пока не ноль} begin k:=k+1; {считаем} i:=i+1; {переходим к следующему элементу} end;Writeln(‘Kolichestvo elementov do nulja=‘,k);end;begin {}clrscr;randomize;write(‘n=‘);readln(n);write(‘Z=‘);readln(Z);writeln(‘Ishodnyj massiv:‘);for i:=1 to n do begin a[i]:=random(10); {формируем исходный массив} write(a[i],‘ ‘); end;writeln;writeln(‘Chetnyj massiv:‘);Chet; {вызываем процедуру, делаем массив четных}writeln(‘Dlina=‘,Dlina); {выводим результат функции Dlina}writeln(‘Massiv s zamenami:‘);Zam; { вызываем процедуру,делаем замены}Nul; { вызываем процедуру,выводим значение количества эл-тов до 0}readlnend.
Форма ответа