Помогите, пожалуйста. Что-то мои попытки бессмысленны. Язык Паскаль.
Напишите программу, которая определяет, сколько в матрице есть K -значных чисел, сумма цифр каждого из которых кратна R .
Входные данные: В первой строке записаны через пробел размеры матрицы: количество строк N и количество столбцов M ( 1 ≤ N , M ≤ 100 ). В следующих N строках записаны строки матрицы, в каждой – по M натуральных чисел, разделённых пробелами. Затем в отдельной строке вводятся числа K и R .
Выходные данные: Программа должны вывести одно число – количество K -значных чисел, сумма цифр каждого из которых кратна R .
Примеры:
входные данные:
5 5
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
2 3
выходные данные:
5
// PascalABC.NET 3.0, сборка 1156 от 30.01.2016
begin
var n,m:integer;
Read(n,m);
var a:array[,] of integer;
SetLength(a,n,m);
for var i:=0 to n-1 do
for var j:=0 to m-1 do Read(a[i,j]);
var k,r:integer;
Read(k,r);
var p:=0; //будущий результат
foreach var x:integer in a do begin
var s:=0; var q:=x; var k1:=0;
while q<>0 do begin
s:=s+(q mod 10); q:=q div 10; Inc(k1)
end;
if (k1=k) and (s mod r = 0) then Inc(p)
end;
Writeln(p)
end.
Тестовое решение:
5 5
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
2 3
5
Оцени ответ