Отыскать сумму и количество элементов в каждом столбце матрицы, являющихся простыми

Отыскать сумму и количество элементов в каждом столбце матрицы, являющихся ординарными числами.
Если можно, то с разъясненьями, пожалуйста. Заранее признательна!

Задать свой вопрос
Владислав
На каком языке писать?
Степан
Паскаль
Daniil Polehin
Данные(размер матрицы и значения элементов)задаются с клавитуры/из файла читаются?
Константин Корзунин
без различия
2 ответа

var
a: array [1..250, 1..250] of integer; // матрица с числами.n, m, i, j: integer;
function prime(a: integer):boolean; //Проверка на простоту.vari: integer;f: boolean;begin  for i := 2 to trunc(sqrt(a)) do    if (a mod i = 0) then     begin         f := true;          break;      end;prime := f;end;beginreadln(n, m); // Ввод размера матрицы.for i := 1 to n dobeginfor j := 1 to m doread(a[i][j]);readln;end;for i := 1 to m do  for j := 1 to n do   if (not prime(a[j][i]))   then     begin      inc(a[n + 1][i]);      inc(a[n + 2][i], a[j][i]);      end;for i := 1 to m do  writeln(a[n + 1][i],' ',a[n + 2][i]); // Вывод суммы и кол - ваreadln;end.
Дарина Гирь
Спасибооооо :-)
Надежда Гайсинская
Не за что =)
Const
  m=5; //число строк
  n=10; //число столбцов
var
  i,j:integer;
   s,k:array[1..n]of integer; //s для суммы, k для количества обычных чисел
  a:array[1..m,1..n]of integer;

function prost(x:integer):boolean; //функция определения простого числа
var i:integer;
begin
result:=true;
for i:=2 to (x div 2) do
  if (x mod i=0) and (ilt;gt;x) then result:=false;
end;  

begin
//наполнение случайными числами и вывод массива
for i:=1 to m do
  begin
  for j:=1 to n do
    begin
    a[i,j]:=random(20)+1;
    write(a[i,j]:5);
    end;
  writeln;
  end;
//Просмотр по столбцам и подсчет s и k
for j:=1 to n do
  begin
  for i:=1 to m do
    if prost(a[i,j]) then
       begin
      s[j]:=s[j]+a[i,j];
      k[j]:=k[j]+1;
      end;
  end;
writeln('Количество обычных чисел по столбцам:' );   
for i:=1 to n do write(k[i]:5);
writeln;
writeln('Сумма обычных чисел по столбцам:' ); 
for i:=1 to n do write(s[i]:5);
end.  
Диана Курмендская
Спасибооооо Вам большое :-)
Лидия Шкварук
вопрос: почему при выводе количества и суммы там везде нолики? но результат есть
Костик Кирчаков
Нолики? У меня их нет. Может, текст программки не так набила? Лучше скопируй текст и вставь. Написано и испытано на ПаскальАВС.НЕТ, а у тебя какой паскаль?
Анастасия
тот же
Камаргалова Анна
Я на данный момент скан работы приложу в ответ
Mazurenok Liza
Я проверила программу, поправила свои ошибки и всё вышло. Огромное Для вас спасибо!!!
Пашок Пивень
Ну и примечательно! Пожалуйста
Максим Кудрявый
А как сделать без функции boolean?
Кальин Толя
Вообщем без функции или просто булевский тип в ней не использовать?
Наталья Месячук
Вообщем без функций
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт