ПОМОГИТЕ РЕШИТЬ В ПАСКАЛЕ. ДАЮ 30 БАЛЛОВ. Дан массив, содержащий 2018 положительных...

+124 голосов
3.9m просмотров

ПОМОГИТЕ РЕШИТЬ В ПАСКАЛЕ. ДАЮ 30 БАЛЛОВ. Дан массив, содержащий 2018 положительных целых чисел, не превышающих 30 000. Необходимо найти в этом массиве количество элементов, которые кратны 7, а их десятичная запись заканчивается цифрой 3, и заменить каждый из таких элементов на это количество. Напишите на одном из языков программирования программу для решения этой задачи. В качестве результата программа должна вывести изменённый массив, по одному элементу в строке. Например, для исходного массива из 5 элементов 14 13 63 203 49 программа должна вывести числа 14 13 2 2 49, по одному числу в строке. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из описанных. Паскаль const N=2018; var a: array [1..N] of integer; i, k, m: integer; begin for i:=1 to N do readln(a[i]); … end.


Информатика (12 баллов) | 3.9m просмотров
Дан 1 ответ
+165 голосов

const

     N=2018;

var

     a: array [1..N] of integer;

      i, k, m: integer;

begin

     for i:=1 to N do

readln(a[i]);  

k := 0

for i:=1 to N do begin

   if (a[i] mod 3 = 0) and (a[i] mod 10 = 7)

       then k := k+1;

end;

for i:=1 to N do begin

   if (a[i] mod 3 = 0) and (a[i] mod 10 = 7)

       then a[i] := k;

   writeln(a[i])

end;

end.

(1.7k баллов)