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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.12.2012, 22:23   #1
Владан
Пользователь
 
Аватар для Владан
 
Регистрация: 24.09.2012
Сообщений: 51
По умолчанию Даны целые числа р и q. Получить все делители числа q, взаимно простые c г.

Даны целые числа р и q. Получить все делители числа q, взаимно простые c г.

Код:
Program Project324;
{$APPTYPE CONSOLE}
uses
  SysUtils;

var A: array [1..1000] of integer; // массив простых чисел
    B: array [1..1000] of integer; // массив всех делителей числа q
    c,k,p,q,i,n: integer;
function Kot(x,y:integer):integer;
    begin
      Kot:=x mod y;
    end;
begin
  writeln('Введите количество использованных простых чисел');
  readln(n);              //простых чисел должно быть побольше
  writeln('Заполните массив простых чисел');
  for i:=1 to n do readln(A[i]);
  Writeln('Введите целые числа q и p');
  readln(q,p);
  k:=1;
  for i:=1 to n do
    begin
     B[k]:=1;
     c:=q;
     while Kot(c,A[i])=0 do
         begin
           B[k]:=B[k]*A[i];
           k:=k+1;
           c:=c/A[i];
         end;
    end;
  for i:=1 to k do
   if Kot(p,B[i])<>0 then writeln(B[i]);
readln;
end.

[Error] Project324.dpr(29): Incompatible types: 'Integer' and 'Extended'



Не могу исправить ошибку
Владан вне форума Ответить с цитированием
Старый 03.12.2012, 22:30   #2
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Цитата:
c:=c/A[i];
c := c div A[i] - частное от деления нацело.
Если Вы хотите, чтобы 5 / 2 = 2.5, а не 2. То меняйте тип c меняйте с Integer на Real (или Double)
Poma][a вне форума Ответить с цитированием
Старый 03.12.2012, 23:39   #3
Владан
Пользователь
 
Аватар для Владан
 
Регистрация: 24.09.2012
Сообщений: 51
По умолчанию

Цитата:
Сообщение от Poma][a Посмотреть сообщение
c := c div A[i] - частное от деления нацело.
Если Вы хотите, чтобы 5 / 2 = 2.5, а не 2. То меняйте тип c меняйте с Integer на Real (или Double)
спасибо!
Владан вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
НАЙТИ ВСЕ ПРОСТЫЕ ДЕЛИТЕЛИ НАТУРАЛЬНОГО ЧИСЛА N Dima170792 Помощь студентам 5 11.06.2011 21:46
Взаимно простые числа Bek-Z Помощь студентам 6 24.12.2010 20:57
Даны натуральные числа n,p, целые числа a1 , ... ,an. Наталья111 Фриланс 10 09.11.2010 20:09
Даны взаимно простые натуральные числа m и n (m>n). Найти переодическую и непереодическую части десятично Angel-dm Паскаль, Turbo Pascal, PascalABC.NET 0 27.04.2010 19:02