Напишите программу, которая заполняет массив случайными целыми числами - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Напишите программу, которая заполняет массив случайными целыми числами, вводит с клавиатуры целое число N и копирует в новый массив все числа из исходного массива, для которых сумма значений всех цифр равна N.

Решение задачи: «Напишите программу, которая заполняет массив случайными целыми числами»

textual
Листинг программы
const nmax=100;
function summa(a:integer):integer;
var b,s:integer;
begin
b:=abs(a);
s:=0;
while b>0 do
 begin
  s:=s+b mod 10;
  b:=b div 10;
 end;
result:=s;
end;
var a:array[1..nmax] of integer;
    m,n,i,k:integer;
begin
randomize;
repeat
write('Введите размер массива от 2 до ',nmax,' m=');
readln(m);
until m in [2..nmax];
writeln('Массив');
for i:=1 to m do
 begin
  a[i]:=-99+random(1099);
  write(a[i]:4);
 end;
writeln;
repeat
write('Введите искомую сумму цифр n>0 n=');
readln(n);
until n>0;
k:=0;
for i:=1 to m do
if summa(a[i])=n then
 begin
  write(a[i]:4);
  k:=1;
 end;
if k=0 then write('Нет чисел с такой суммой цифр');
end.

Объяснение кода листинга программы

  1. Создается константа nmax, которая определяет максимальное количество элементов в массиве.
  2. Создается функция summa, которая принимает целое число и возвращает сумму его цифр.
  3. Создается переменная a, которая представляет собой массив для хранения случайных целых чисел.
  4. Создаются переменные m, n, i и k, которые будут использоваться в цикле.
  5. Цикл repeat используется для запроса размера массива от пользователя.
  6. В цикле repeat выполняется запрос размера массива от пользователя.
  7. Цикл repeat используется для заполнения массива случайными целыми числами.
  8. В цикле repeat выполняется запрос искомой суммы цифр от пользователя.
  9. Если сумма цифр равна n, то число добавляется в массив.
  10. Если цикл закончился и в массиве нет чисел с такой суммой цифр, выводится сообщение Нет чисел с такой суммой цифр.
  11. Код завершается.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.833 из 5
Похожие ответы