Найдем первое число из данного диапазона, кратное семи.
100 / 7 = 14 и остаток 2.
100 + (7-2) = 105. (можно найти это число и другими путями).
И теперь задача сводится к нахождению суммы чисел последовательности 105, 112, ... где последнее число не превышает 200,
// PascalABC.NET 3.1, сборка 1192 от 07.03.2016
begin
Writeln('S=',Range(105,200,7).Sum)
end.
<u><em>Тестовое решение:</em></u>
S=2107
#include <stdio.h>
char main(void)
{
char A[50], n = 50,i,max;
srand(time(0));
printf("Array A[50]: \r\n ");
for (i=0; i<n; i++)
{
A[i] = -5+ rand(0) %10;
printf("%d ", A[i]);
}
max = A[0];
for (i=0; i<n; i++)
{
if (A[i]>max)
{
if (A[i]>0) max = A[i];
}
}
printf(" \r\n Max: %d ", max);
}
Var n, f, o: string; a, i: integer;
begin
write('Введите фамилию ');
Readln(f);
write('Введите имя ');
Readln(n);
write('Введите отчество ');
Readln(o);
a := length(n) + length(f) + length(o);
Writeln('Длина имени, фамилии и отчества равна ', a);
Writeln('Инициалы ', f[1], '. ', n[1], '. ', o[1], '. ');
a := 0;
for i := 1 to length(f) do
if f[i] = 'и' then a := a + 1;
Writeln('Количество букв и в фамилии ', a);
<span>end.</span>
Наверное, 8. Сначала делим число 226 пополам (т.к всего 226 вариантов чисел), задаёт вопрос, "больше 113 или нет". После опять дели пополам оставшуюся часть и опять задаёт аналогичный вопрос. И т.д.
Var
a: array [1..4] of integer;
i, sf, ss : integer;
begin
for i:=1 to 4 do
begin
a[i]:= random(50)+1;
writeln(a[i]);
if a[i] mod 2 = 0 then sf:=sf+a[i] else
ss:= ss+a[i];
end;
writeln('Сумма четных: ', sf, ' ; сумма нечетных: ', ss);
<span>end.</span>