В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
6e3yMHbIu1
6e3yMHbIu1
31.03.2022 14:34 •  Информатика

Составьте алгоритм сбора чисел от 1 до 50 (1+2+3+4+...35+36...) с программы на фото!


Составьте алгоритм сбора чисел от 1 до 50 (1+2+3+4+...35+36...) с программы на фото!

Показать ответ
Ответ:
StanleyPines618
StanleyPines618
03.04.2022 17:58
Код Pascal1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 const n=100; type arr=array[1..n] of integer; var   a:arr;   skv:real;   i,k,l:integer; procedure print(s:string;a:arr;l:integer); var   i:integer; begin   writeln(s);   write('[');   for i:=1 to l-1 do write(a[i],', ');   writeln(a[l],']'); end; procedure sort(var a:arr;l:integer); var   i,j,t:integer; begin   for i:=1 to l-1 do     for j:=i to l do       if a[j]<a[i] then begin         t:=a[j];         a[j]:=a[i];         a[i]:=t;       end; end; begin   repeat     write('Количество элементов массива:');     readln(k);   until (k>0) and (k<101);   write('Введите массив:');   for i:=1 to k do     repeat       write('a[',i,']=');       readln(a[i]);     until (a[i]>-11) and (a[i]<11);   print('Оригинальный массив:',a,k);   l:=0;skv:=0.0;   for i:=1 to k do     if a[i]<0 then begin       a[i]:=sqr(a[i]);       skv:=skv+a[i];       l:=l+1;     end else a[i]:=i;   print('Полученный массив:',a,k);   sort(a,k);   print('отсортированный массив:',a,k);   writeln('Среднее арифметическое квадратов отрицательных чисел:',skv/l:0:4);   readln; end.
0,0(0 оценок)
Ответ:
dondokuchaev2015
dondokuchaev2015
21.03.2022 07:04
Тут есть несколько вариантов, как это можно записать:

Если номера месяцев не превысят 12, то есть имеются ввиду только месяцы одного года, то вот так:

Var
N:integer;
Begin
WriteLn('Введите номер месяца');
ReadLn(N);
if (N = 12)or(N = 1)or(N = 2) then WriteLn('Зима') //если N = 12, 1 или 2, то выводим 'Зима', иначе идём по следующей ветке if, проверяем следующее условие
else if (N = 3)or(N = 4)or(N = 5) then WriteLn('Весна') // тут точно также N = 3, 4 или 5, если нет - то проверяем следующее условие
else if (N = 6)or(N = 7)or(N = 8) then WriteLn('Лето')
else if (N = 9)or(N = 10)or(N = 11) then WriteLn('Осень')
End.

Если же номер месяца может превысить 12, то перед проверкой нужно найти остаток от деления этого числа на количество месяцев, то есть на 12. При этом остаток от деления 12 на 12 = 0.

Var
N:integer;
Begin
WriteLn('Введите номер месяца');
ReadLn(N);
N:= N mod 12;
if (N = 0)or(N = 1)or(N = 2) then WriteLn('Зима')
else if (N = 3)or(N = 4)or(N = 5) then WriteLn('Весна')
else if (N = 6)or(N = 7)or(N = 8) then WriteLn('Лето')
else if (N = 9)or(N = 10)or(N = 11) then WriteLn('Осень')
End.

Эти же самые условия можно записать иначе:
if (N>=0)and(N<=2) then
или:
if (N>=0)and(N<3) then
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота