Процедура, Программа для решения задачи |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Процедура, Программа для решения задачи |
Alexandr |
Сообщение
#1
|
Гость |
Помогите пожалуйста написать программу по процедурам.Я уже заходил на FAQ файлы и в поиск
но такого не нашел. 1. Вычислить: 1. Даны три вещественных массива A(N), B(M), C(K). Определить, какие из них расположены в порядке возрастания. и если можно подскажите что-нибудь про эту задачу если вам не трудно: 2. Привести дробь 1 + 1/2 + 1/3 + ... + 1/15 к несократимому виду c/d. ( процедура, приводящую дробь a/b к несократимому виду p/q.) |
Shura |
Сообщение
#2
|
Пионер Группа: Пользователи Сообщений: 136 Пол: Мужской Реальное имя: Александр Репутация: -2 |
Я не думаю что забить кусок кода из той программы в процедуру очень уж сложно... Alexandr сказал, что он искал, но ничего не нашел - я лишь указал на недавний пост.
Вот вторая задача. Так как пояснений, как именно нужно сокращать числитель и знаменатель (типа, куда минус девать если что, сокращать ли минусы, и прочее...) нету, то решение только для положительных А и B. Код Uses Crt; var a,b,p,q: LongInt; Procedure make(a,b: LongInt; var p,q: LongInt); var c: LongInt; begin if b = 0 then begin p:=a; q:=b end else if (a mod b) = 0 then begin p:=a div b; q:=1 end else begin if a < b then c:=a else c:=b; while (c > 1)and(not((a mod c = 0)and(b mod c = 0))) do Dec(c); p:=a div c; q:=b div c end; Write(a, ' / ', b, ' = '); if q = 1 then Write(p) else Write(p, ' / ', q) end; begin ClrScr; Write('Vvedite a,b: '); ReadLn(a,b); a:=abs(a); b:=abs(b); Make(a,b,p,q); ReadLn end. Сообщение отредактировано: Shura - -------------------- Старайтесь восполнять пробелы в области незнания! ;-D
|
Текстовая версия | 13.05.2024 5:23 |