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

0 голосов
118 просмотров

Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, оканчивающихся на 5, а также наибольшее из этих чисел. Программа получает на вход коли- чество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 3. Программа должна вывести 2 числа - количество чисел, оканчивающихся на 5 и наибольшее из них.


Информатика (14 баллов) | 118 просмотров
0

На каком языке?

0

Паскаль

Дан 1 ответ
0 голосов

Вводится натуральное число N (N ≤ 1000000). Затем вводятся N целых чисел, не превосходящих по абсолютному значению 2³¹. Найти количество чисел, которые заканчиваются на 5. Если такие числа есть, вывести максимальное из них.

Чтобы определить последнюю цифру числа, воспользуемся оператором взятия остатка от деления. Чтобы можно было смотреть последнюю цифру у отрицательных чисел, будем брать остаток по модулю.


Код (Pascal)

var

 i, n, k, max: longint;

 a: array[1..1000000] of longint;


begin

 read(n);

 max := -32767;

 k := 0;

 for i := 1 to n do

 begin

   read(a[i]);

   if abs(a[i] mod 10) = 5 then

   begin

     k := k + 1;

     if a[i] > max then max := a[i];

   end;

 end;

 write(k, ' ');

 if k <> 0 then write(max);

 writeln;

end.

===========================

По условию задачи можно обойтись и без хранения массива. Такой код вложен в решение.

(3.7k баллов)