М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
olqa252ru
olqa252ru
01.06.2020 13:56 •  Информатика

На массивы(в паскале): 1.найти количество нулей в одномерном массиве. 2. найти сумму элементов кратных 5. 3.найти сумму первых 5 элементов. 4. верно ли что в массиве есть два нуля. 5. найти сумму элементов из промежутка от
а до в.

👇
Ответ:
LisenokLove2003
LisenokLove2003
01.06.2020

{Допустим ,что масив будет вводитса с клавиатуры число символов 10 тип-integer}

program mas;

var m:array [1..10] of integer;

i,o,kp,pp,oo,a,b,s:integer; 

begin

writeln ('Vvedit masiv');

for i:=1 to 10 do begin

readln (m[i]); end;

o:=0; 

for i:=1 to 10 do begin

if m[i]=0 then o:=o+1; end;

kp:=0 

for i:=1 to 10 do begin

if m[i] div 5=5 then kp:=kp+1; end;

pp:=0;

for i:=1 to 5 do begin

pp:=pp+m[i]; end;

oo:=0; 

for i:=1 to 10 do begin 

if m[i]=0 then oo:=oo+1; end;

writeln ('Vvedit A i B');

readln (a,b);

s:=0; 

for i:=a to b do begin

s:=s+m[i]; end;

writeln ('Kolichestvo 0 - ',o);

writeln ('suma kratna 5- ',kp);

writeln ('suma pervix 5- ',pp);

if oo=2 then writeln ('Virno v masivi dva nuli') else

writeln ('V masive ne 2 nuli');

writeln ('suma ot A do B= ',s);

end.                

{P.S. я не проверял в Паскале если будут з нею проблемы то обращяйся}

{P.P.S. обрати внимание на разницу о и 0} 

 

 

 

 

4,7(75 оценок)
Открыть все ответы
Ответ:
Сначала код без комментариев:

Var
S:longint;
i:integer;
A:byte;

Begin
S:=0;
Repeat
   Read(A);
   if (A mod 2 <> 0)and(A mod 7 = 0) then S:=S+A;
Until A = 0;
WriteLn('S = ',S);
End.

Теперь объяснение каждой строки:

Var
S:longint;
i:integer;
A:byte; // В эту переменную будет вводится число с клавиатуры. Тип Byte может принимать значения от 0 до 255. Поэтому его как раз хватит.

Begin
S:=0; // Тут будет храниться сумма, поэтому переменную следует сперва обнулить.

Repeat // далее начинается цикл
   Read(A); // эта команда каждый раз считывает с клавы число, и записывает его в переменную A.

   if (A mod 2 <> 0)and(A mod 7 = 0) then S:=S+A; //тут проверяется 2 условия, и если они выполняются - к переменной S прибавляется значение переменной А
   1 условие: число нечётно, то есть остаток от деления его на 2 не равен нулю (A mod 2 <>0)
   2 условие: Число кратно 7, то есть делится без остатка на 7, то есть остаток от деления равен нулю (A mod 7 = 0)

Until A = 0; // Цикл повторяется до тех пор, пока введённое с клавы число не будет равно нулю (A = 0)

WriteLn('S = ',S); // Тут выводится искомая сумма
End.
4,7(70 оценок)
Ответ:
89195188243aMils
89195188243aMils
01.06.2020
Алфавит у нас состоит из трех букв (Б,У,М). Длина ряда 4 буквы. Количество возможных слов вычисляется по формуле N^m(н в степени м), где N - это длина алфавита, а m - длина ряда. Получаем 3^4=81. Дальше нужно исключить случаи, когда Есть три идущие буквы подряд, рассмотрим все случаи. 
1.Когда все буквы в слове одинаковые (, , );
2.Когда есть три буквы одинаковые (БББУ,УБББ,БББМ,МБББ, БУУУ,УУУБ,МУУУ,УУУМ,МММБ,БМММ,УМММ,МММУ.).
Тобишь всего исключений 12+3=15.
Вычитаем из количества всех вариантов 81-15=66.
ответ:66 различных слов.  
4,7(51 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ