дроби, напечатать по возрастанию |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
дроби, напечатать по возрастанию |
Client |
Сообщение
#1
|
Профи Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: 20 |
помогите пожалуйста
Задача: Найти и напечатать в порядке возрастания все простые несократимые дроби заключенные между 0 и 1, знаменатели которых не превышают 7 (дробь задается двумя натуральными числами-числителем и знаменателем). т.е. 1/2,1/3,2/3,1/4,3/4,1/5,2/5,3/5,4/5... Вот с поиском несократимых дробей постараюсь сам, а вот потом чтобы по возрастанию-нет идеи. вообщем надо циклом, но можно и массивом(если так легче будет). |
Client |
Сообщение
#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. Вот подставил и все работает) Спасибо за помощь всем |
Malice |
Сообщение
#3
|
Профи Группа: Пользователи Сообщений: 705 Пол: Мужской Репутация: 20 |
|
Текстовая версия | 19.04.2024 7:09 |