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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.11.2011, 02:58   #1
sqr
Пользователь
 
Аватар для sqr
 
Регистрация: 26.10.2011
Сообщений: 49
По умолчанию Циклы. Табулирование ф-ции.

Проверьте пожалуйста, правильно ли выполнил задачу.
Задание:

Код программы:
Код:
program lab4_1_1KI;
uses crt;
var d:real;
    m:integer;
begin
     clrscr;
     {Табулируем функцию}
     m:=(-10);
     writeln('Если m меньше или равно 1:');
        while m<=1 do
          begin
            d:=m*m*m;
            writeln(d:2:1);
            m:=m+1;
          end;
     writeln('Если m больше 1:');
        while m<=10 do
         begin
            d:=3/m;
            writeln(d:2:1);
            m:=m+1;

         end;
     readln;
end.
Результат:
Everybody lies.
sqr вне форума Ответить с цитированием
Старый 06.11.2011, 09:44   #2
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,817
По умолчанию

мне так кажется, что ДА, ПРАВИЛЬНО.
только зачем брать отрицательное число в скобочки?
Код:
 m:=(-10);
вы же ни на что его не умножаете, чтоб знаки не путались...
но это ерунда.
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.

Последний раз редактировалось NetSpace; 06.11.2011 в 09:46.
NetSpace вне форума Ответить с цитированием
Старый 06.11.2011, 09:59   #3
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

Нет. НЕПРАВИЛЬНО!!
Это важно: Необходимо использовать условный оператор.
С Вашими переменными
Код:
m:=-10;
dm := 1;
while m<=10 do begin
   if m <= 1 then
       d:=m*m*m  {точку с запятой НЕ ставим. Почему?}
   else
       d:=3/m;
   m:=m+dm;
   writeln('m= ', m:4, 'D= ', d:8:3);
end;
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 06.11.2011, 13:09   #4
sqr
Пользователь
 
Аватар для sqr
 
Регистрация: 26.10.2011
Сообщений: 49
По умолчанию

Цитата:
Сообщение от NetSpace Посмотреть сообщение
только зачем брать отрицательное число в скобочки?
Да это для уверенности. Но спасибо, буду знать что не обязательно

Цитата:
Сообщение от ViktorR Посмотреть сообщение
Нет. НЕПРАВИЛЬНО!!
Это важно: Необходимо использовать условный оператор.
Я сначало хотел ветвление использовать, но ничего не вышло, сейчас попробую еще раз по вашему примеру. Спасибо огромное
Everybody lies.

Последний раз редактировалось sqr; 06.11.2011 в 14:13.
sqr вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Классы/вирт. ф-ции vladxxl Общие вопросы C/C++ 1 12.04.2011 00:15
Параметры ф-ции ForzaJuve Общие вопросы C/C++ 12 14.10.2010 09:14
наследование. виртуальные ф-ции, помогите с дв-ем HoOpe Помощь студентам 0 16.06.2009 01:27
ф-ции и процедурыю работа с текстом katya36 Помощь студентам 8 13.04.2009 10:19