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

> Правила раздела!

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

 
 Ответить  Открыть новую тему 
> Использование процедур/функций, Вопросы по Паскалю
сообщение
Сообщение #1


Гость






Ребятки, помогите ответить на два вопроса - вы мне очень поможите!!
1)Какие функции можно вызывать как процедуры? Можно ли процедуры вызывать как функции?
2)Приведите фрагмент программы, в котором ищется минимум среди нечётных элементов массива. Какие у него достоинства и недостатки?
Спасибочки. Жду.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Цитата
Какие функции можно вызывать как процедуры?
Любые (кроме встроенных в модуль System), если программа компилировалась с ключом {$X+}, который позволяет Extended Syntax (Расширенный Синтаксис)
Цитата
Можно ли процедуры вызывать как функции?
Нет, процедура не рассчитана на использование в выражениях.

А на второй вопрос можно ответить по-разному... Можно написать программу так, что будут недостатки одного рода, можно - так, что будут совсем другие... То же и с достоинствами...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Цитата(volvo @ 14.12.2005 21:40) *

А на второй вопрос можно ответить по-разному... Можно написать программу так, что будут недостатки одного рода, можно - так, что будут совсем другие... То же и с достоинствами...

А можете привести и тот и тот вариант, ну или хотя бы один. Ну плз. Я Вас прошу!
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Ищущий истину
******

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

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



var
a:array[1..10] of integer;
i,min:integer;
begin
randomize;
for i:=1 to 10 do begin a[i]:=random(10); write(a[i], ' '); end ; writeln;
min:=a[1];
for i:=2 to 10 do if (odd(i)) and (a[i]<min) then min:=a[i];
writeln(min);
readln;
end.

вот еще вариант

var
a:array[1..10] of integer;
i,min:integer;
begin
randomize;
for i:=1 to 10 do begin a[i]:=random(10); write(a[i], ' '); end ; writeln;
min:=a[1];i:=1;
while i<=10 do begin if a[i]<min then min:=a[i]; inc(i,2); end;
writeln(min);
readln;
end.



--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

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

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


Спасибо большое. Ток я немножко не поняля, где во второй задаче проверяется то, что элементы нечетные. Но все равно спасибо!!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Анжелика, вот так лучше будет:
min:=maxint;
for i := 1 to 10 do
if (odd(a[i])) and (a[i]<min) then min:=a[i];

if min = maxint then write('в массиве нет нечетных чисел')
else writeln('минимум среди нечетных чисел = ', min);

У Олега просто искался минимум среди элементов с нечетными индексами
 К началу страницы 
+ Ответить 

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

 





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