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

Написать программы на паскале. 1. вычислить . x - натуральное число. 2. среди 10 введённых с клавиатуры чисел подсчитать количество отрицательных и произведение положительных. рассмотреть случай если отрицательных чисел нет.

👇
Ответ:
KatyaTishkina
KatyaTishkina
09.11.2020

1)

uses crt;
var x,y,pr:integer;
begin
read(y,x);
pr:=1;
repeat
pr:=pr*y;
x:=x-1;
until x=0;
write(pr);
end.

 

2)

uses crt;
var
a:array[1..10] of integer;
pr,i,k:integer;
begin
for i:=1 to 10 do
read(a[i]);
clrscr;
pr:=1;
for i:=1 to 10 do
begin
if a[i]<0 then k:=k+1;
if a[i]>0 then pr:=pr*a[i];
end;
writeln('Исходный массив: ');
for i:=1 to 10 do
write(a[i],' ');
writeln;
if k<>0 then writeln('Отрицательных элементов: ',k) else writeln('Отрицательных элементов нет');
write('Произведение положительных элементов равно: ',pr);
end.

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

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 оценок)
Ответ:
ДашаАлл
ДашаАлл
09.11.2020
14 и 35 делятся на 7, поэтому можно получить только количества воды, кратные 7 л. Максимальное возможное число литров в двух сосудах равно 14 + 35 = 49, поэтому можно пробовать получить 0 л, 7 л, 14 л, 21 л, 28 л, 35 л, 42 л, 49 л.

0 л, 14 л, 35 л, 49 л - очевидно, получаются, это ни одного заполненного бака, заполненный бак на 14, заполненный бак на 35, оба заполненных бака.

21 л: заполнить бак на 35, отлить 14 в меньший бак, вылить воду из меньшего бака.
7 л: налить 21 л в больший бак (мы это уже умеем), отлить 14 в меньший бак, вылить воду из меньшего бака.
28 л: наполнить меньший бак, вылить из меньшего бака в больший, заполнить меньший бак.
42 л: налить 7 л в больший бак, перелить в меньший бак, заполнить больший бак.

Итого, можно получить 0 л, 7 л, 14 л, 21 л, 28 л, 35 л, 42 л, 49 л.
4,5(13 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ