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

HELP ME HELP ME HELP ME HELP [email protected]без игнора,ребят мне уже 5 дней Написать блок схему и программу к задаче. есть трехзначные числа. необходимо найти количество чисел, Произведение цифр которых меньше восьми. сделать как вложенный цикл

👇
Ответ:
dashnv76
dashnv76
30.06.2020

var

a,b,i,count:integer;  

begin  

i:=100;  

repeat  

 b:=i;  

 a:=1;

 while b>0 do

   begin

     a:=a * (b mod 10);  

     b:=b div 10;

   end;

 if a < 8 then

   begin

     inc(count);

     write(i:4);

   end;  

 inc(i);

until i>=999;

writeln;

writeln('Count: ',count);

end.


HELP ME HELP ME HELP ME HELP [email protected]без игнора,ребят мне уже 5 дней Написать блок схему и
4,8(26 оценок)
Открыть все ответы
Ответ:
polina198678
polina198678
30.06.2020
Const m=5; n=6;
var 
a:array[1..m,1..n] of integer;
i,j,max,imax,jmax,min,imin,jmin:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to m do
 begin
 for j:=1 to n do
  begin
   a[i,j]:=random(100);
   write(a[i,j]:4);
  end;
  writeln;
 end;
max:=a[1,1]; imax:=1; jmax:=1;
min:=a[1,1]; imin:=1; jmin:=1;
for i:=1 to m do
 for j:=1 to n do
  begin
  if a[i,j]>max then begin max:=a[i,j]; imax:=i; jmax:=j; end;
  if a[i,j]<min then begin min:=a[i,j]; imin:=i; jmin:=j; end;
  end;
writeln('max = a[',imax,',',jmax,'] = ',max);
writeln('min = a[',imin,',',jmin,'] = ',min);
a[imax,jmax]:=min;
a[imin,jmin]:=max;
writeln('Полученный массив:');
for i:=1 to m do
 begin
 for j:=1 to n do write(a[i,j]:4);
 writeln;
 end;
end.

Пример:
Исходный массив: 
  69   2  25  92  32  43
  98  77  49  29  48   5
  30   8  95  83  37  83
  31   6  47  91  82  65
  86  31  62  70  82  38
max = a[2,1] = 98
min = a[1,2] = 2
Полученный массив:
  69  98  25  92  32  43
   2  77  49  29  48   5
  30   8  95  83  37  83
  31   6  47  91  82  65
  86  31  62  70  82  38
4,8(13 оценок)
Ответ:
969758676
969758676
30.06.2020
Любое произведение чисел будет четным, если оно содержит хотя бы оин четный сомножитель, поэтому задача сводится к определению того, есть ли в массиве хоть один четный элемент с нечетным порядковым номером.
Почему просто не попытаться перемножить эти элементы? Например потому, что максимальное целое значение в компьютерной математике ограничено количеством байт, отводимых для представления данных такого типа и редко превышает 2³². А представление с плавающей точкой - приближенное и проверять четность для подобных чисел часто оказывается бессмысленным.

// PascalABC.NET 3.1, сборка 1250 от 28.05.2016
begin
  var a:=ArrRandom(10,-15,15); a.Println;
  if a.Where((x,i)->i.IsEven).Any(x->x.IsEven) then
    Writeln('Четное')
  else Writeln('Нечетное')
end.

Тестовое решение
13 3 5 4 15 7 -15 -4 7 12
Нечетное

Пояснения.
1. var a:=ArrRandom(10,-15,15); - описывается динамический массив "а", который создается и заполняется данными.
2. a.Println; - вывод элементов массива.
3. a.Where((x,i)->i.IsEven) выделяет из массива "а" элементы, у которых индекс четный (массив "а" - динамический и его элементы индексируются от нуля, поэтому элементы с нечетным порядковым номером имеют четные индексы).
Полученная последовательность элементов посредством Any(x->x.IsEven) проверяется на наличие хотя бы одного элемента с четным значением. Проверка возвращает логическое значение, на основе которого формируется вывод.
4,5(45 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ