Подсчитайте в последовательности количество единиц, количество двоек, количество троек - PascalABC.NET
Формулировка задачи:
На вход программе подается последовательность чисел от 1 до 9, заканчивающаяся нулем. Всего будет введено не более 100000 чисел. Подсчитайте в этой последовательности количество единиц, количество двоек, количество троек и т. д. и выдайте результат. В выходных данных всегда должно быть 9 чисел.
Программа
Листинг программы
- Program z2;
- Var a,b: array[1..10000] of integer;
- i,n,k:integer;
- begin
- readln(a[1]);
- i:=1;
- while a[i]<>0 do begin
- i:=i+1;
- readln(a[i]);end;
- b[i]:=1;
- for i := 1 to 9 do begin
- k:=0; //вот тут застряла
- if b[i]=a[i] then k:=k+1;
- write(k,' ');
- end;
- end.
Решение задачи: «Подсчитайте в последовательности количество единиц, количество двоек, количество троек»
textual
Листинг программы
- Var a: array[1..9] of integer;
- k:byte;
- begin
- for k:=1 to 9 do a[k]:=0;
- repeat
- read(k);
- if k<>0 then inc(a[k]);
- until k=0;
- for k := 1 to 9 do
- write(a[k],' ');
- end.
Объяснение кода листинга программы
- Создается массив a размером 1..9 для хранения количества повторяющихся цифр от 0 до 9.
- Инициализируется переменная k значением 0.
- Запускается цикл for, который будет выполняться от k=1 до 9.
- Внутри цикла каждая ячейка массива a[k] инициализируется значением 0.
- Цикл while запускается до тех пор, пока не будет введено значение k=0.
- Внутри цикла while происходит чтение значения k с помощью функции read.
- Если k не равно 0, то значение в ячейке a[k] увеличивается на единицу.
- Цикл while завершается, когда значение k становится равным 0.
- Запускается цикл for, который будет выполняться от k=1 до 9.
- Внутри цикла for выводится значение каждой ячейки массива a[k] с помощью функции write, с добавлением пробела после каждого значения.
- Цикл for завершается, когда значение k становится равным 10.
- Программа заканчивается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д