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

Дан массив а размерностью (m, n). найти произведение положительных элементов расположенных выше диагонали и заменить все нулевые элементы исходного массива на полученное произведение.

👇
Ответ:
//Pascal ABC.NET v3.0 сборка 1111

Var
 ma:array of array of integer;
 n,m,i,j,res:integer;
 b:boolean;
begin
 randomize;
 res:=1;
 b:=false;
 read(m,n);
 setlength(ma,m);
 for i:=0 to m-1 do
  setlength(ma[i],n);
 writeln('First matrix:');
  for i:=0 to m-1 do
   begin
    writeln;
     for j:=0 to n-1 do
      begin
       ma[i,j]:=random(10);
       write(ma[i,j]:5);
      end;
   end;
  if n>m then
   begin
   for i:=0 to m-1 do
    for j:=i+1 to n-1 do
     if ma[i,j]>0 then
      begin;
       res:=res*ma[i,j];
       b:=true;
      end;
   end
    else
    begin
     for i:=0 to n-1 do
      for j:=i+1 to n-1 do
       if ma[i,j]>0 then 
       begin;
         res:=res*ma[i,j];
         b:=true;
        end;
    end;
  if b=false then res:=0;
  writeln;
  writeln('Final array:');
   for i:=0 to m-1 do
    begin
     writeln;
      for j:=0 to n-1 do
       begin
        if ma[i,j]=0 then ma[i,j]:=res;
        write(ma[i,j]:5);
       end;
    end;
  writeln;
  writeln('res=',res);
end.
4,5(38 оценок)
Открыть все ответы
Ответ:
MagicalBiology
MagicalBiology
06.04.2020
1. PascalABC.NET 3.3.5, сборка 1644 от 23.03.2018
Внимание! Если программа не работает, обновите версию!

begin
  var (a,b):=ReadInteger2;
  Range(a,b).Aggregate(Biginteger(1),(p,q)->p*q).Println
end.

Результат показан во вложении 1. Большое число получилось)))

2. Free Pascal

program ideone;

var
  a,b,i:integer;
  p:extended;

begin
  Read(a,b);
  p:=1;
  for i:=a to b do p:=p*i;
  Writeln(p)
end.

Результат приведен во вложении 2.
К сожалению, на интервале данных [1;2018] в этой версии Паскаля недостаточно диапазона значений представляемого результата и было вычислено произведение на [1;1000]. Для [1;2018] выводится Inf - машинная бесконечность.

15 . произведение чисел: составить код, который будет сам умножать все числа по порядку. мы выбираем
15 . произведение чисел: составить код, который будет сам умножать все числа по порядку. мы выбираем
4,4(20 оценок)
Ответ:
vitalikduma01oz0gwd
vitalikduma01oz0gwd
06.04.2020
Язык C++.
1. #include <iostream>
using namespace std;
int main() {
    int i;
    cout <<"Введите число: " << endl;
    cin >> i;
    cout << "Вы ввели число: " << i << endl;
    }

2. #include <iostream>
using namespace std;
int main (){
    int i;
    cout << "Vvod" << endl;
    cin >> i;
    i %= 10;
    if(i %2 != 0)
    cout << "Нечетная" << endl;
    else
    cout << "Четная" << endl;
    }

3. #include<iostream>
using namespace std;
int main (){
for(int k = 0; k<4; k++){
cout << "random number = " << rand() << endl;
}
}

4. #include <iostream>
using namespace std;
int main(){
int i,a,b,c;
cin >> i;
c = i%10;
b =(i/10)%10;
a = i/100;
if(i*i==a*a*a+b*b*b+c*c*c)
cout<<"Является."<<endl;
else 
cout<<"Не является."<<endl;
}

5. #include <iostream>
#include <cmath>
const double pi = 3.1415926536;
using namespace std;
int main(){
    float x = 0;    cout << "Введите x: " << endl;
    cin >> x;
    cout << "y = " <<  sin((pi*(3.2+(sqrt(1+x))))/180)/abs(5*x) << endl;
    }

Добавляем "pi" и делим на 180, чтобы "sin" был в градусах.

Блок-схемы смотри во вложении.
1. написать программу и составить к программе блок-схему. составить программу вывода на экран числа,
1. написать программу и составить к программе блок-схему. составить программу вывода на экран числа,
4,8(78 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ