IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> дроби, напечатать по возрастанию
сообщение
Сообщение #1


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

Репутация: -  20  +


помогите пожалуйста
Задача: Найти и напечатать в порядке возрастания все простые несократимые дроби заключенные между 0 и 1, знаменатели которых не превышают 7 (дробь задается двумя натуральными числами-числителем и знаменателем). т.е. 1/2,1/3,2/3,1/4,3/4,1/5,2/5,3/5,4/5...
Вот с поиском несократимых дробей постараюсь сам, а вот потом чтобы по возрастанию-нет идеи. вообщем надо циклом, но можно и массивом(если так легче будет).
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

Репутация: -  20  +


Код
uses crt;
var
   i,n,m:0..7;
   c:boolean;
procedure f(a,b,c,d:integer; n,m:integer);
begin
     if n>m then exit;
     if ((a+c)<=m) and ((b+d)<=m) then
        begin
             f(a,b,a+c,b+d,n+1,m);
             write (a+c,'/',b+d,'  ');
             f(a+c,b+d,c,d,n+1,m)
        end
end;
begin
     clrscr;
     for i:=1 to 7 do
              for n:=0 to i-1 do
                  begin
                       f(n,i,i,i,2,7);
                  end;
     readkey
end.

Вот подставил и все работает)
Спасибо за помощь всем
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Профи
****

Группа: Пользователи
Сообщений: 705
Пол: Мужской

Репутация: -  20  +


Цитата(Client @ 16.11.2007 7:09) *

Вот подставил и все работает)
Спасибо за помощь всем

Это, конечно, неплохо, только я не понял за чем ты так по хитрому вызываешь эту процедуру. Надо просто:

clrscr;
f(0,1,1,1, 1,7);
readkey;

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Client   дроби   14.11.2007 23:32
Client   вот сделал только вывод дробей uses crt; var i,…   14.11.2007 23:57
Boss   Уточни что есть по возрастанию??? К примеру 2/3 …   15.11.2007 1:34
TarasBer   Эту задачу оптимальнее через ряд Фарея делать htt…   15.11.2007 2:00
Malice   Эту задачу оптимальнее через ряд Фарея делать :…   15.11.2007 2:49
Boss   2Malice если не сложно кинь пример с рекурсией, а …   15.11.2007 5:26
Malice   2Malice если не сложно кинь пример с рекурсией, а…   15.11.2007 11:58
Client   именно так. И вывести надо как дробь 6/7.... поп…   15.11.2007 11:34
Client   uses crt; var i,n,m:0..7; c:boolean;…   16.11.2007 11:09
Malice   Вот подставил и все работает) Спасибо за помощь в…   16.11.2007 14:31
Client   Спасибо за совет :good: Процедуры и функции, а те…   16.11.2007 22:20
pefeUnsaste   посоветуйте пожалуйста хорошую зоо клинику в москв…   29.06.2012 5:12
-Алексей-   Ребят, а помогите эту же задачу решить только на с…   1.10.2012 1:48
TarasBer   Заменяешь begin и end на {}, = на ==, := на =.   1.10.2012 2:19
Angelina   Что значит clrscr и readkey ???   9.10.2014 21:00


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 19.04.2024 7:09
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name