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

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

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

 
 Ответить  Открыть новую тему 
> задача на дроби, сложение дробей!
сообщение
Сообщение #1


Хакер
*

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

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


Даны 2 дроби А/В и С/D (ADCй - натуральное число). Составить программу для сложения дробей. Результат должен быть несократимой дробью.
Что то не так! Проверьте пожалуйста!

Код
Program 3;
var n, i: integer;

begin
Readln (n);
writeln('Dividers: ');

for i := 1 to n div 2 do
  if (n mod i) = 0 then begin
    write(i,'  ');
      end;
writeln(n);
readln
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Я.
****

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

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


По идее код должен вывести ВСЕ делители числа 2. И?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





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

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



{Дополнительные переменные введены на случай,
если требуется сохранение исходных данных (в конце вывод действий)}
var a,b,c,d,a1,c1,nod_b,nod_d,zn,ch: integer;
begin
write('Введите числитель 1-й дроби: ');
readln(a);
repeat
write('Введите знаменатель 1-й дроби: ');
readln(b);
until b<>0;
write('Введите числитель 2-й дроби: ');
readln©;
repeat
write('Введите знаменатель 2-й дроби: ');
readln(d);
until d<>0;
nod_b:=b;
nod_d:=d;
while nod_b<>nod_d do
if nod_b>nod_d then nod_b:=nod_b-nod_d
else nod_d:=nod_d-nod_b;
zn:=(b*d) div nod_d;
a1:=zn div b;
c1:=zn div d;
ch:=a*a1+c*c1;
//writeln(ch,'/',zn);
a1:=ch;
c1:=zn;
while a1<>c1 do
if a1>c1 then a1:=a1-c1
else c1:=c1-a1;
ch:=ch div a1;
zn:=zn div a1;
writeln(a,'/',b,'+',c,'/',d,'=',ch,'/',zn);
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





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