Автор Тема: Помогите плиз  (Прочитано 4300 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн alex89

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Помогите плиз
« : 28 Ноября 2009, 00:22:16 »
помогите плиз

вот эта шляпа
1)Дана последовательность натуральных чисел {aj}j=1...n (n<=10000). Если в последовательности есть хотя бы одно простое число, упорядочить последовательность по невозрастанию.
Реш.
Const Nmax = 10000;
Source = 'INPUT.txt';
Target = 'Output.txt';

Function Prost(b : integer) : boolean;
var d, c, pr : integer;
begin
pr := false;
if b > 2 then begin
d := 2;
c := trunc(sqrt(b));
while d <= c do begin
if b mod d <> 0 then pr := true;
d := d + 1;
end;
end;
prost := pr;
end;

var n, j, i, m : integer;
a : array[1..Nmax] of integer;
input, output : text;
z : boolean;

begin
assign(input, Source);
reset(input);
assign(output, Target);
rewrite(output);

read(input, n);
j := 1;

while j <= n do begin
read(input, a[j]);
j := j + 1;
end;
z := false;
j := 1;

while (j <= n) and (z=false) do z := prost(a[j]);

if z = false then begin
write(output, 'Net prostix chisel');
exit;
end;
If Z=true then begin
j := 1;
while j<=n do
If a[j+1]<a[j] then
j := j + 1 else
m := a[j+1]
a[j+1] := a[j]
a[j] := m
j := j + 1
end;
write(output,a[j], '')
end.

Оффлайн Asix

  • Администратор
  • *****
  • Сообщений: 7257
  • Математик
    • Просмотр профиля
Re: Помогите плиз
« Ответ #1 : 28 Ноября 2009, 09:50:36 »
Не флудите в чужих темах!
Для своих задач, создавайте свои топики!
Математика онлайн - онлайн калькуляторы по математике, геометрии и теории вероятности!
Решение задач | Примеры решения задач | Рефераты | Заказать решениеШпаргалки | Теоретический материал

Выполнение студенческих работ на заказ!
Выполняем - Контрольные работы | Курсовые работы | Рефераты | Решение задач

За советы можете мне плюсики в репутацию ставить =)) Разрешаю =))

Оффлайн Данила

  • Глобальный модератор
  • *****
  • Сообщений: 1657
  • Математик-экстрасенс
    • Просмотр профиля
Re: Помогите плиз
« Ответ #2 : 28 Ноября 2009, 12:46:25 »
что именно не работает? мне лично не нравится ваша функция определения простое число или нет

if b mod d <> 0 then pr := true else
d := d + 1;

мне кажется нужно так
Просьба не кидать мне в ЛС Ваши задания...создаем тему,пишем свое задание,наработки\идеи...полностью и нахаляву ничего не решаю

Вам в помощь:
∫ ¼ ½ ¾ ⅓ ⅔ ⅛ ⅜ ⅝ ⅞ ² ³ ± ~ ‰ ∞ √ ∑ ∆ ℮ ∩ ≡ ≤ ≥ ≈ ∩