Присваиваем переменной max, которая должна содержать максимальное значение, минимальное значение -1 ( -1000 -1 = -1001).
for j := 1 to N doif (a[j] mod 10 <> 3) and (a[j]<0) thenif a[j]>max then max := a[j];Пробегаемся по элементам массива и смотрим: если остаток модуля элемента от деления на 10 неравен 3 (т.е. не оканчивается цифрой 3) и элемент меньше 0 (т.е. отрицательный), тогда, при условии, что элемент больше текущего максимального значения, переменную max перезаписываем -- присваиваем ей текущий элемент.
if max=-1001 then write('Не найдено') else write(max);Если переменная max содержит изначальное значение (-1001), то выводим на экран "Не найдено", иначе выводим на экран max.
Пример работы:Решение представлено во вложении.
Язык: Pascal
ответ: переменная c примет значение 10.
Примечание:
div - целая часть от деления.
Ручная прогонка:
1 шаг:
a:=17;
2 шаг:
b:=(a div 10)*10; // 17 = 1 * 10 + 7 => a div 10 = 1; (a div 10) * 10 = 1*10 = 10; Получаем в b значение 10;
3 шаг:
a:=(b*2) + a div 100; // b * 2 = 10 * 2 = 20; a div 100 = 17 div 100 = 0;
a = 20 + 0 = 20; Получаем в a значение 20;
4 шаг:
Проверяем выполнение условий:
(a > b)? - Да, 20 > 10, значит в переменную c записываем значение (a-b). Получаем: c = a - b = 20 - 10 = 10.
ответ: с = 10
2.шифр, криптография 3. тайнопись
Объяснение: