Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.08.2010, 00:05   #1
begemotikdin
Пользователь
 
Аватар для begemotikdin
 
Регистрация: 17.12.2007
Сообщений: 36
По умолчанию функция....

Доброго времени суток пишу прогу следующую....
В матрице целых чисел A[n,m] обнулить столбцы, где нет простых и совершенных чисел, если таких нет оставить без изменения матрицу
написал функции по логичскому значений каждого элемента....
проблема в следующем-никак не удается сделать цикл в основной программе по проверке значений матрицы по столбцам и обнуления элементов матрицы....
вот код
Цитата:
uses crt;
function Sover(S:integer):boolean;
var
sum,m:integer;
begin
if S>1 then
begin
sum:=1;
for m:=2 to S div 2 do
if S mod m=0 then sum:=sum+m;
if sum=S then Sover:=True
else Sover:=false;
end
else Sover:=false;
end;
function Prostoe(Pr:integer):boolean;
var
Flag:boolean;
i:word;
begin
if Pr>0 then
begin
Flag:=True;
for i:=2 to Pr div 2 do
if Pr mod i=0 then
begin
Flag:=false;
break;
end
end
else Flag:=false;
Prostoe:=Flag;
end;
var
A:array[1..10,1..10] of integer;
n,m,i,j:word;
F,F1:boolean;
BEGIN
clrscr;
write('->');
readln(n);
write('-)');
readln(m);
for i:=1 to n do
for j:=1 to m do
read (A[i,j]);
writeln;
writeln('A.....');
for i:=1 to n do
begin
for j:=1 to m do
write(A[i,j],' ');
writeln;
end;
for i:=1 to n do
for j:=1 to m do
F:=Sover(a[i,j]);
F1:=Prostoe(A[i,j]);
for i:=1 to n do
for j:=1 to m do
begin
if F xor F1 then
begin
for j:=1 to m do
begin
for i:=1 to n do
A[i,j]:=0;
end;
end;
end;
writeln('....A....');
for i:=1 to n do
begin
for j:=1 to m do
write(A[i,j],' ');
writeln;
end;
readln;
END.

Последний раз редактировалось begemotikdin; 19.08.2010 в 00:07.
begemotikdin вне форума Ответить с цитированием
Старый 19.08.2010, 08:32   #2
r9m
₪₪₪₪₪₪₪₪
Форумчанин
 
Аватар для r9m
 
Регистрация: 16.04.2007
Сообщений: 471
По умолчанию

Тебе самому не противно смотреть на такой код?
r9m вне форума Ответить с цитированием
Старый 19.08.2010, 08:50   #3
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Код:
uses crt;
function Sover(S:integer):boolean;
var sum,m:integer;
begin
if S>1 then
 begin
  sum:=1;
  for m:=2 to S div 2 do
  if S mod m=0 then sum:=sum+m;
  if sum=S then Sover:=True
  else Sover:=false;
 end
else Sover:=false;
end;
function Prostoe(Pr:integer):boolean;
var Flag:boolean;
    i:word;
begin
if Pr>0 then
 begin
  Flag:=True;
  for i:=2 to Pr div 2 do
  if Pr mod i=0 then
   begin
    Flag:=false;
    break;
   end
 end
else Flag:=false;
Prostoe:=Flag;
end;
var A:array[1..10,1..10] of integer;
    n,m,i,j:word;
    F:boolean;
BEGIN
clrscr;
write('n=');readln(n);
write('m=');readln(m);
writeln('Vvedite ',n*m,' celyh chisel:');
for i:=1 to n do
for j:=1 to m do
read (A[i,j]);
readln;
clrscr;
writeln('A.....');
for i:=1 to n do
 begin
  for j:=1 to m do
  write(A[i,j]:4,' ');
  writeln;
 end;
for j:=1 to m do
 begin
  F:=true;
  for i:=1 to n do
  if Sover(a[i,j]) or Prostoe(A[i,j])then
   begin
    F:=false;
    break;
   end;
  if F then
  for i:=1 to n do
  A[i,j]:=0;
 end;
writeln('....A....');
for i:=1 to n do
 begin
  for j:=1 to m do
  write(A[i,j]:4,' ');
  writeln;
 end;
readln
END.
puporev вне форума Ответить с цитированием
Старый 19.08.2010, 18:51   #4
begemotikdin
Пользователь
 
Аватар для begemotikdin
 
Регистрация: 17.12.2007
Сообщений: 36
По умолчанию

Спасибо..................
begemotikdin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Функция Get DarkDante Общие вопросы C/C++ 2 26.03.2010 22:23
Функция NeosPasha Помощь студентам 0 25.01.2010 13:01
ИФ функция fatal_err0r Microsoft Office Excel 2 18.03.2009 17:05
Функция Lemo Помощь студентам 1 02.12.2008 00:24
одна функция потока, а другая функция - член класса запускающего этот поток Дмитрий_Ч Общие вопросы C/C++ 2 27.09.2007 08:50