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

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

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

 
 Ответить  Открыть новую тему 
> Задача на тему процедуры и функции, В ступоре, помогите исправить маленькие ошибки
kvadrat
сообщение 24.05.2008 12:52
Сообщение #1


Пионер
**

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

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


Условие:
Прикрепленное изображение

Program funkcii;
function f1(a:array of real; h:real):real;
begin
if a[1]<a[1]*a[3] then h:=a[1] else
h:=a[1]*a[3];
if a[3]+a[5]<h then h:=a[3]+a[5];
writeln('MIN=',h);
end;
function f2 (b:array of real; m:real):real;

begin
if b[2]+b[4]>b[1]+b[3] then m:=b[2]+b[4] else
m:=b[1]+b[3];
writeln('MAX=',m);
end;
var a:array[1..5] of real;
b:array[1..5] of real; h,m,z:real;i,j:integer;
begin
for i:=1 to 5 do
readln(a[i]);
for j:=1 to 5 do
readln(b[j]);
z:=f1(h,a[i])+f2(m,b[i]);
writeln('z=',z);
end.


Огромный респект и + в репу тому кто поможет smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Айра
сообщение 24.05.2008 15:58
Сообщение #2


Профи
****

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

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


Что-то не поняла откуда у тебя массивы появились, и что нужно сделать с этим: (d-a,b\c) Это тоже функция какая-то получается?

Без нее получилось так:
var a,b,c,d: real;

function f(x,y,z,v: real): real;
function min(x,y: real): real; //здесь просто вычисляется минимум среди двух чисел
begin
if x<y then min:=x
else min:=y;
end;

function max(x,y: real): real;
begin
if x>y then max:=x
else max:=y;
end;
begin
f:=max(x+y,y*z)/min(x,y*v); //а тут ты подставляешь сами выражения
end;

begin
writeln('введите числа');
readln(a,b,c,d);
writeln('получилось: ',f(a,b,c,d),'');
end.


Сообщение отредактировано: Айра - 24.05.2008 16:08
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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