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

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

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

> Процедура, Программа для решения задачи
Alexandr
сообщение 8.01.2006 16:55
Сообщение #1


Гость






Помогите пожалуйста написать программу по процедурам.Я уже заходил на FAQ файлы и в поиск
но такого не нашел.
1. Вычислить: 1. Даны три вещественных массива A(N), B(M), C(K). Определить, какие из них расположены в порядке возрастания.
и если можно подскажите что-нибудь про эту задачу если вам не трудно:
2. Привести дробь 1 + 1/2 + 1/3 + ... + 1/15 к несократимому виду c/d. ( процедура, приводящую дробь a/b к несократимому виду p/q.)
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 5)
volvo
сообщение 8.01.2006 17:10
Сообщение #2


Гость






Первая будет такой:
procedure IsAZ(var arr: array of real; const size: integer;
var Ok: boolean);
var i: integer;
begin

i := 1; Ok := true;
while (i < size) and Ok do
if arr[i - 1] >= arr[i] then Ok := false
else inc(i);

end;

Вызов:
Var
a: array[1 .. 10] of real;
Good: boolean;
...
IsAZ(a, 10, good); { В Good содержится результат проверки (true - возрастающий массив) }

Вторую задачу попробуй решить сам...
 К началу страницы 
+ Ответить 
Shura
сообщение 8.01.2006 17:13
Сообщение #3


Пионер
**

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

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


По первой задаче.... Ну вчера же решение похожей выкладывал.. Только там со строками матрицы нужно сделать похожее. Ну а матрицу можно считать массивом массивов.
http://forum.pascalnet.ru/index.php?showtopic=8638&st=5#


--------------------
Старайтесь восполнять пробелы в области незнания! ;-D
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 8.01.2006 17:15
Сообщение #4


Гость






Shura, а ты что, работал там с процедурами? Я почему-то не заметил этого.
 К началу страницы 
+ Ответить 
Shura
сообщение 8.01.2006 17:26
Сообщение #5


Пионер
**

Группа: Пользователи
Сообщений: 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 - 8.01.2006 17:53


--------------------
Старайтесь восполнять пробелы в области незнания! ;-D
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Alexandr
сообщение 8.01.2006 19:19
Сообщение #6


Гость






Спасибо за помощь volvo.Вот ничтяк, даже не ожидал что мне так поможет этот форум.
<...>
<БОЛЬШОЕ СПССИБО>
 К началу страницы 
+ Ответить 

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

 



- Текстовая версия 12.08.2025 10:27
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"