Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.05.2007, 16:30   #1
Wander
Пользователь
 
Регистрация: 18.04.2007
Сообщений: 12
Вопрос 5 задач

Составьте пожалуста текст програмок :
1. Вычислить значения выражения
(х * у <>0) and (у > х) при х = 2, у = 1;
2. Вычислить координаты центра тяжести трех материальных точек с массами и координатами по формулам (ссылка на формулу):
3. Записать действие в виде одного условного оператора:
d = max (a, b, c);
4. Составить программу, вычисляющую экстремальное значение функции у=|a|e^bx+cx^2 при изменении аргумента х от 0 до 4 с шагом h
5. Не используя стандартные функции (за исключением abs), вычислить с точностью до 10^-4: рис 1.JPG
Изображения
Тип файла: bmp 0.bmp (56.3 Кб, 143 просмотров)
Wander вне форума Ответить с цитированием
Старый 30.05.2007, 18:38   #2
Shuraken
Форумчанин
 
Аватар для Shuraken
 
Регистрация: 16.04.2007
Сообщений: 298
По умолчанию

1.
function CheckedExpr(x: integer = 2; y: integer = 1): boolean;
begin
Result := (х * у <>0) and (у > х);
end;

Остальные звыняйте, надо думать.
Не надо ничего усложнять. Все достаточно тривиально.
Shuraken вне форума Ответить с цитированием
Старый 30.05.2007, 19:53   #3
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

3 задачу вапще реально решить?
pu4koff вне форума Ответить с цитированием
Старый 30.05.2007, 21:58   #4
Shuraken
Форумчанин
 
Аватар для Shuraken
 
Регистрация: 16.04.2007
Сообщений: 298
По умолчанию

Реально, если вспомнить что Case тоже условный оператор.
Не надо ничего усложнять. Все достаточно тривиально.
Shuraken вне форума Ответить с цитированием
Старый 30.05.2007, 22:56   #5
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Цитата:
Сообщение от Shuraken Посмотреть сообщение
Реально, если вспомнить что Case тоже условный оператор.
а case'ом тут как?
ЗЫ. аж стыдно от незнания стало
pu4koff вне форума Ответить с цитированием
Старый 31.05.2007, 10:18   #6
Yogurt
Пользователь
 
Аватар для Yogurt
 
Регистрация: 22.01.2007
Сообщений: 25
По умолчанию

Цитата:
Сообщение от Shuraken Посмотреть сообщение
Реально, если вспомнить что Case тоже условный оператор.
Если хорошо вспомнить оператор Case то получется, что там выражение должно иметь порядковый тип, а всписках значений должны стоять только константы.
А для порядкового типа существует функция High.

P.S. Можно ли использовать кроме одного условного оператора другие, например, цикл For?
Yogurt вне форума Ответить с цитированием
Старый 31.05.2007, 11:46   #7
Shuraken
Форумчанин
 
Аватар для Shuraken
 
Регистрация: 16.04.2007
Сообщений: 298
По умолчанию

Увы, через case не получилось, но можно так записать:
if (a > b) and (a > c) then
d := a
else if (b > a) and (b > c) then
d := b
else
d := c;
и это будет один условный оператор в три строки.
Не надо ничего усложнять. Все достаточно тривиально.
Shuraken вне форума Ответить с цитированием
Старый 31.05.2007, 12:11   #8
mihaild
Пользователь
 
Регистрация: 31.05.2007
Сообщений: 10
По умолчанию

3. Невозможно. С помощью одного условного оператора можно выяснить только один бит информации, а нам необходимо минимум (логарифм 3 по основанию 2).
mihaild вне форума Ответить с цитированием
Старый 31.05.2007, 12:54   #9
mihaild
Пользователь
 
Регистрация: 31.05.2007
Сообщений: 10
По умолчанию

2)
function formula(m1,m2,m3,c1,c2,c3 : real):real;
begin
result:=(m1*c1+m2*c2+m3*c3)/(m1+m2+m3);
end;

begin
xc:=formula(m1,m2,m3,x1,x2,x3);
xy:=formula(m1,m2,m3,y1,y2,y3);
end.
mihaild вне форума Ответить с цитированием
Старый 31.05.2007, 13:13   #10
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Цитата:
Сообщение от Shuraken Посмотреть сообщение
Увы, через case не получилось, но можно так записать:
if (a > b) and (a > c) then
d := a
else if (b > a) and (b > c) then
d := b
else
d := c;
и это будет один условный оператор в три строки.
это будет 2 условных оператора или я чего-то путаю
pu4koff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение задач imhotep Помощь студентам 18 20.02.2012 17:03
Панель задач Черничный Общие вопросы Delphi 2 18.08.2008 02:28
Панель задач Патрон Общие вопросы Delphi 2 31.03.2008 22:54
Пара задач на C++ ribnik Помощь студентам 11 21.01.2008 03:22
[C++] Несколько задач Алиса111 Помощь студентам 1 15.01.2008 03:52