Модераторы: volvo877, Snowy, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> При остальных целых m 
V
    Опции темы
NetFlame
  Дата 23.10.2006, 14:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



Здравствуйте! TP 7.0
Такая задача:

user posted image

Вот сделал для нее код

Код

Program a4;
Uses CRT;
VAR f,z,x,m:real;
BEGIN
CLRSCR;
write('Введите значение x:'); read(x);
write('Введите значение m:'); read(m);

IF x > 5 then f := x - 5
       else if x < 5 then f := 3 * (exp(ln(x)*4))
                     else if x = 5 then f := cos(x);
IF m = 3 then z := x - 0.33
         else if m = 5 and m = 2 then z := abs(ln(-m))
                                 else if 


А что дальше - не знаю. Как сделать условие " при остальных целых m " ?
PM MAIL WWW ICQ   Вверх
XupyprMV
Дата 23.10.2006, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 16.10.2006
Где: Сыктывкар, Россия

Репутация: нет
Всего: нет



Во-первых нужно использовать or а не and (т.к. m не может одновременно равнятся 5-ти и 2-м)

Во-вторых один из методов узнать, является ли число целым... сравнить его с ним же, после отбрасывания дробной части (не знаю, является ли этот вариант самым оптимальным, но он работает).

Код

if m = 3 then z := x - 0.33
             else if (m = 5) or (m = 2) then z := ln(abs(-m))
                                                    else if m=trunc(m) then z:=sin(m);


P. S. и ещё - сначала берём модуль, потом логарифм.

Это сообщение отредактировал(а) XupyprMV - 23.10.2006, 15:01
PM MAIL WWW ICQ   Вверх
NetFlame
Дата 23.10.2006, 15:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



Получилось, что

Код

Program a4;
Uses CRT;
VAR f,z,x,m:real;
BEGIN
CLRSCR;
write('Введите значение x:'); read(x);
write('Введите значение m:'); read(m);

IF x > 5 then f := x - 5
       else if x < 5 then f := 3 * (exp(ln(x)*4))
                     else if x = 5 then f := cos(x);
IF m = 3 then z := x - 0.33
             else if (m = 5) or (m = 2) then z := ln(abs(-m))
                                        else if m=trunc(m) then z:=sin(m);
writeln('f=', f);
writeln('z=', z)
END.


Компилируется, запускаю - появляется черный экран со строкой Turbo Pascal version 7.0 Copyright........
Строчки Введите значение x: нету. При нажатии, к примеру, на любое число, сразу же выкидывает на исходный код, не показывая ошибки.

Это сообщение отредактировал(а) NetFlame - 23.10.2006, 15:21
PM MAIL WWW ICQ   Вверх
XupyprMV
Дата 23.10.2006, 17:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 16.10.2006
Где: Сыктывкар, Россия

Репутация: нет
Всего: нет



Может в настройках какие-то проблемы... У меня компилируется и запускается без проблем (копировал кусок кода прямо из твоего поста). 

Как вариант попробуй убрать uses crt и clrscr, а в конце добавь строчку readln; (перед end.)

PM MAIL WWW ICQ   Вверх
NetFlame
Дата 23.10.2006, 17:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



Нет, не получается...

Добавлено @ 17:29 

volvo877, вижу читаешь тему  smile 

Какие соображения?

Это сообщение отредактировал(а) NetFlame - 23.10.2006, 17:30
PM MAIL WWW ICQ   Вверх
Alexeis
Дата 23.10.2006, 17:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: нет
Всего: 459



NetFlame, Это глюк со средой, а не прогой.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi"
THandle
Rrader
volvo877

Запрещается!

1. Обсуждать и делится взломанными компонентами или программным обеспечением

2. Публиковать ссылки на варез

3. Оффтопить

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема »


 




[ Время генерации скрипта: 0.0460 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.