Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 1000. Элемент массива называется хорошим, если это двузначное число, причём цифра в разряде десятков больше, чем цифра в разряде единиц. Опишите на одном из языков программирования алгоритм, позволяющий найти и вывести сумму всех хороших элементов массива.
Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.
| Бэйсик | Паскаль |
|---|---|
N=30 DIM A(N) AS INTEGER DIM I, J, S AS INTEGER FOR I = 1 TO N INPUT A(I) NEXT I ... END
| const N=30; var a: array [1..N] of integer; i, j, s: integer; begin for i:=l to N do readln(a[i]); ... end.
|
| Си++ | Алгоритмический язык |
#include <iostream> using namespace std; #define N 30 int main(){ int a[N]; int i, j, s; for (i=0; i < N; i++) cin >> a[i]; ... | алг нач цел N=30 целтаб а[1:N] цел i, j, s нц для i от 1 до N ввод а[i] кц ... кон |
| Python | |
# допускается также # использовать две # целочисленные переменные j, s a = [] n = 30 for i in range(0, n): a.append(int(input())) ... | |
В качестве ответа Вам необходимо привести фрагмент программы, который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например, Free Pascal 2.4) или в виде блок-схемы. В этом случае вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии.
Пример программы на языке Паскаль
s: =0;
for i:=1 to N do begin
if (10<=a[i]) and (a[i] <= 9 9) and
((a[i] div 10) > (a[i] mod 10) ) then s:=s+a[i];
end;
writeln(s);
Пример программы на языке Бейсик
S = 0
FOR I = 1 ТО N
IF 10 <=А(I) AND А(I)<=99 AND A(I)\10 > A(I) MOD 10 THEN S = S + A (I)
END IF NEXT I PRINT S
Пример программы на языке Си
s=0 ;
for (i=0; i < N; i++) {
if (10<=a[i] && a[i]<=99 && a[i]/10 > a[i]%10) s = s +a[i];
}
cout « s « endl;
Пример программы на алгоритмическом языке
s: =0
нц для i от 1 до N
если 10<=a[i]<=99 и div(a[i],10) > mod(a[i],10)
то s:=s+a[i]
все
кц
вывод s

