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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2008, 17:38   #1
Gobl1n
 
Регистрация: 30.11.2008
Сообщений: 4
По умолчанию Помогите отладить программу, плз!!! прога с пояснениями

Дана последовательность натуральных чисел, заканчивающаяся нулем. Для каждого просто числа Х данной последовательности найти такое У, что двоичная запись числа У получается из двоичной записи числа Х, путем изменения порядка цифр на обратный.

т.е. напимер число Х = 3 = 011 изменям порядок -> 110 = 6 = У

программу составил, но компилятор ругатся на несовместимость какую-то и еще несколько непонятных вещей находит ((( Помогите пожалуйста довести до ума тут всё





function prost(n:integer):boolean;// определяем является ли число простым
var f,d,r:integer;
begin
d:=2;
r:=round(sqr(n));
f:=1;
while (d<=r) and (f<>0) do
begin
f:= n mod d;
d:=d+1;
end;
if d>r then
begin
prost:=true;
end
else
begin
prost:=false;
end;
end;


function to_dva(n:integer):integer;// переводим число в двоичную С.С.
var x,y:integer;
begin
y:=0;
while n>1 do
begin
x:=n div 2;
n:=n mod 2;
y:=y*10+x;
end;
if n=1 then
y:=y+1;
to_dva:=y;
end;


function to_des9t(n:integer):integer;// переводим число в 10-ю С.С.
var n10,st2,k:integer;
begin
n10:=0;
st2:=1;
k:=0;
while n>0 do
begin
k:=n div 10;
n10:=n10+k*st2;
st2:=st2*2;
n:=n mod 10;
end;
to_des9t:=n10;
end;


const count=10;
var
m: array [1..count] of integer;
s,t,i:integer;
begin
s:=0; // переменная служит для задания пос-го элемента массива нулем
randomize;
for i:=1 to (count-1) do
begin
read(m[i]);
writeln(m[i]);
s:=s+1;
end;
m[s]:=0

for i:=1 to count do
begin
if prost(m[i])=true then
begin
t:=m[i];
write('X =',t);
to_dva(m[i]);
to_des9t(to_dva(m[i]));
write('Y = ',to_des9t(to_dva(m[i])));
writeln;
end;
end;
readln
end.




p.s. Старался, но категорически не получается =(((((
Вложения
Тип файла: txt программа.txt (2.0 Кб, 127 просмотров)
Gobl1n вне форума Ответить с цитированием
Старый 15.12.2008, 17:55   #2
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Вставляя код не забывайте пожалуйста о тегах форматирования

Код:
program Lab4z3;



function rus(s:string) :string;
var i:integer;
begin
 for i:=1 to length(s)do
  case s[i] of
  'А'..'п': s[i]:=chr (ord (S[i])-64);
  'р'..'я': S[i]:=chr (ord (S[i])-16);
  end;
 rus:=S
end;

function prost(n:integer):boolean;   
var f,d,r:integer;
begin
  d:=2;
  r:=round(sqr(n));
  f:=1;
  while (d<=r) and (f<>0) do
    begin
      f:= n mod d;
      d:=d+1;
    end;
  if d>r then
    begin
      prost:=true;
    end
  else
    begin
      prost:=false;
    end;
end;


function to_dva(n:integer):integer;  
var x,y:integer;
begin
  y:=0;
  while n>1 do
    begin
      x:=n div 2;
      n:=n mod 2;
      y:=y*10+x;
    end;
  if n=1 then
    y:=y+1;
  to_dva:=y;
end;


function to_des9t(n:integer):integer; 
var n10,st2,k:integer;
begin
  n10:=0;
  st2:=1;
  k:=0;
  while n>0 do
    begin
      k:=n div 10;
      n10:=n10+k*st2;
      st2:=st2*2;
      n:=n mod 10;
    end;
  to_des9t:=n10;
end;



const count=10;
var
  m: array [1..count] of integer;
  s,t,i:integer;


begin
  s:=0;
  randomize;
  for i:=1 to (count-1) do
    begin
      read(m[i]);
      writeln(m[i]);
      s:=s+1;
    end;
  m[s]:=0;

  for i:=1 to count do
    begin
      if prost(m[i])=true then
        begin
          t:=m[i];
          write('M =',t);
          to_dva(m[i]);
          to_des9t(to_dva(m[i]));
          write(rus('Y ='),to_des9t(to_dva(m[i])));
          writeln;
        end;
    end;
  readln
end.
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 16.12.2008, 20:09   #3
Gobl1n
 
Регистрация: 30.11.2008
Сообщений: 4
По умолчанию

я вставлял когда - норм было, а потом сместилось, я файлик с норм форматированием прикрепил ))) сейчас главное прога запускается а не досчитывает все что нужно.. =((((
Gobl1n вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите отладить программу. TheKnyazz Паскаль, Turbo Pascal, PascalABC.NET 21 26.11.2008 17:51
Просьба отладить программу!! на языке СИ Лидия Общие вопросы C/C++ 1 25.05.2008 17:57
надо отладить программу Daddic Помощь студентам 3 20.04.2008 18:24
как можно отладить программу????? Николай969 Помощь студентам 2 13.01.2008 19:33