Форум
» Назад на решение задач по физике и термеху
Регистрация | Профиль | Войти | Забытый пароль | Присутствующие | Справка | Поиск

» Добро пожаловать, Гость: Войти | Регистрация
    Форум
    Информационные технологии
        Турбо Паскаль. Программирование на Pascal
Отметить все сообщения как прочитанные   [ Помощь ]
» Добро пожаловать на форум "Информационные технологии" «

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 ]
Модераторы: paradise, KMA
  

KMA



Долгожитель

Ну что значит найти простое число, значит проверить высказывание, что данное число является простым. Простое -- по определению, есть число среди натуральных чисел, которое делиться только на само себя и на 1, при этом 1 простым не является. =)

Значит, тебе надо запустить цикл от 2 до n-1, где n это твое число и проверить, есть ли такое среди перечисленных, на которое данное число делиться. Если есть, значит не простое, если нет, значит простое. Блин, простой перебор, чего здесь думать???

P. S. под словом делиться, имеется в виду, делимость двух чисел без остатка.

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 24 дек. 2006 2:35 | IP
Duke Garland


Удален

Условие нахождения простого числа выглядит примерно так
... if not((a[j] mod 2)or(a[j] mod 3)) then begin......


(Сообщение отредактировал Duke Garland 24 дек. 2006 3:41)

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 24 дек. 2006 2:51 | IP
KMA



Долгожитель

Duke Garland это ты про что???

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 24 дек. 2006 2:58 | IP
Guest



Новичок

Вот то что я написал, помогите пожалуйста, посмотрите в чем ошибка, он не выводит никак особенные числа:

Program zad1;
uses crt;
const n=3;
     m=6;
type mas=array [1..n,1..m] of integer;
var a: mas;
   i,j,k,l,g,r:integer;
   fl:boolean;

procedure zap(n,m:integer; var a:mas);
begin
 randomize;
 for i:=1 to n do
 for j:=1 to m do
 begin
 readln (r);
 a[i,j]:=r;
 end;
end;

procedure viv(n,m:integer; var a:mas);
begin
 for i:=1 to n do
 begin
   for j:=1 to m do write (a[i,j]:3);
   writeln;
 end;
end;

procedure osob(n,m:integer; var a:mas);
var g,z,f:integer;
begin
 for i:=1 to n do
 k:=0;
 l:=0;
 j:=0;
 begin
   for j:=1 to m do
   begin
     if (j<>1) and (j<>2) and (j<>3) and (j<>m) then
      begin
        for g:=1 to j-3 do
            if ((a[i,g]-a[i,g+1])=(a[i,g+1]-a[i,g+2])) then inc(k);
            writeln (k);
        for g:=j+1 to m do
          begin
            for z:=g to m-1 do
              if ((a[i,g] mod z)<>0) then inc(l);

          end;
        if (k=j-3) or (l=0) then Writeln ('Element A[',i,',',j,'] = ',a[i,j],' - osobenniy');
      end;

   end;
 end;
end;

BEGIN
clrscr;
zap (n,m,a);
viv (n,m,a);
osob(n,m,a);
readln;
END.

Всего сообщений: Нет | Присоединился: Never | Отправлено: 24 дек. 2006 3:51 | IP
Dimka


Новичок

Я зарегился, если поймете в чем ошибка прошу скинуть на мыло, заранее спасибо


(Сообщение отредактировал Dimka 24 дек. 2006 4:29)

Всего сообщений: 2 | Присоединился: июнь 2010 | Отправлено: 24 дек. 2006 3:56 | IP
Dimka


Новичок

УРААААА!!!

Program zad1;
uses crt;
const n=3;
     m=6;
type mas=array [1..n,1..m] of integer;
var a: mas;
   i,j,k,l,g,r:integer;

procedure zap(n,m:integer; var a:mas);
begin
 randomize;
 for i:=1 to n do
 for j:=1 to m do
 begin
 readln (r);
 a[i,j]:=r;
 end;
end;

procedure viv(n,m:integer; var a:mas);
begin
 for i:=1 to n do
 begin
   for j:=1 to m do write (a[i,j]:3);
   writeln;
 end;
end;

procedure osob(n,m:integer; var a:mas);
var g,z,q:integer;
begin
 for i:=1 to n do
 begin
   for j:=1 to m do
   begin
     k:=0;
     l:=0;
     if (j<>1) and (j<>2) and (j<>3) and (j<>m) then
      begin
        for g:=1 to j-3 do
            if ((a[i,g]-a[i,g+1])=(a[i,g+1]-a[i,g+2])) then inc(k);
            writeln (k);
            writeln;
        for q:=j+1 to m do
          begin

             for z:=2 to a[i,j]-1 do
                if ((a[i,q] mod z)=0) then inc(l);
                writeln (l);
          end;
        if (k=j-3) and (l=0) then Writeln ('Element A[',i,',',j,'] = ',a[i,j],' - osobenniy');
      end;

   end;
 end;
end;

BEGIN
clrscr;
zap (n,m,a);
viv (n,m,a);
osob(n,m,a);
readln;
END.


Почти 5 утра, но я все сделал!!! Исправил косяки, вот код, может кому понадобиться

(Сообщение отредактировал Dimka 24 дек. 2006 4:42)

Всего сообщений: 2 | Присоединился: июнь 2010 | Отправлено: 24 дек. 2006 4:26 | IP
mittal


Удален

Расскажите,плиз, как в односвязном списке поменять местами две его состовляющих?

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 24 дек. 2006 14:48 | IP
miss_graffiti


Долгожитель

mittal, просто перекинуть указатели...
KMA, а ты уверен, что нужно делать цикл до n-1?

Всего сообщений: 670 | Присоединился: сентябрь 2005 | Отправлено: 24 дек. 2006 15:04 | IP
mittal


Удален

Так в том то и дело что я не понимаю как это можно сделать! может какой нить простой примерчик или ссылочку где это есть, а?

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 24 дек. 2006 15:20 | IP
Dimka


Новичок

Уважаемы, у меня к вам еще вопросики.

вот задание
a)Создать файл, содержащий сведения о наличии билетов в кассах Аэрофлота. Структура записи: номер рейса, пункт назначения, время вылета, время прибытия, количество свободных мест в салоне
b)Упорядочить данные файла по номеру рейса.

вот код который я сделал, не могу понять как отсортировать, помогите кто чем может

program zad2;
uses crt;
const n=5;
type zapis=record
      reys:array [1..n] of integer;
      gorod:string [20];
      vilet:string [10];
      prib:string [10];
      mest:integer;
      end;

var f,g:file of zapis;
   plan:array[1..n] of zapis;
   prom:zapis;
   i:integer;

procedure create;
 begin
   rewrite (f);
   for i:=1 to n do
   begin
       writeln ('Vvedite nomer ',i,' reysa');
       readln (prom.reys);
       writeln ('Vvedite punkt naznacheniya');
       readln (prom.gorod);
       writeln ('Vremya vileta');
       readln (prom.vilet);
       writeln ('Vremya pribitiya');
       readln (prom.prib);
       writeln ('Biletov');
       readln (prom.mest);
       plan:=prom;
       write(f,plan);
   end;
   close(f);
 end;

procedure out;
begin
 reset(f);
 write ('REYS ':5,'Gorod ':10,'  Vilet v':10,'  Pribitie v':10,'  Biletov':5);
 writeln;
 for i:=1 to n do
 begin
   read (f,prom);
   write (prom.reys:5);
   write (prom.gorod:10);
   write (prom.vilet:10);
   write (prom.prib:10);
   write (prom.mest:5);
   writeln;
 end;
 close(f);
end;

procedure sort;
var m:integer;
   k:integer;
begin
 m:=0;
 rewrite (g);
 reset(f);
 for i:=1 to n-1 do
 begin
   for i:=1 to n-1 do
    begin
     read(f,prom);
     if (prom.reys>prom.reys[i+1]) then
     begin
      k:=prom.reys;
      prom.reys:=prom.reys[i+1];
      prom.reys[i+1]:=k;
     end;
    end;



 end;
 close(f);
 close(g);
end;






BEGIN
assign (f,'c:\123.dat');
assign (g,'c:\sort.dat');
create;
out;
sort;
out;
readln;
END.

Всего сообщений: 2 | Присоединился: июнь 2010 | Отправлено: 24 дек. 2006 15:50 | IP

Эта тема закрыта, новые ответы не принимаются

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 ]

Форум работает на скрипте © Ikonboard.com