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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.09.2012, 21:45   #1
Владан
Пользователь
 
Аватар для Владан
 
Регистрация: 24.09.2012
Сообщений: 51
По умолчанию Лаб3 - записать цикл for и repeat

Подскажите плз как правильно записать цикл for и repeat
заранее спасибо!
Изображения
Тип файла: jpg Безымянный2.jpg (59.2 Кб, 134 просмотров)
Тип файла: jpg Безымянный3.jpg (67.7 Кб, 133 просмотров)
Тип файла: jpg Безымянный4.jpg (71.0 Кб, 145 просмотров)
Владан вне форума Ответить с цитированием
Старый 24.09.2012, 22:04   #2
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Лучше код. По картинкам не ахти какого качества работать не ахти как продуктивно!
Poma][a вне форума Ответить с цитированием
Старый 24.09.2012, 22:59   #3
Leshii
Форумчанин
 
Регистрация: 26.07.2011
Сообщений: 376
По умолчанию

while и repeat еще понятно

Код:
repeat 
    {формулы и вывод}
    x:=x+h;
 until x<=b+h/2;
А вот с фором шаг типа real не прокатит

Желательно чтоб ты прочитал пост выше, и кинул сюда полное задание + код.
Люблю на ты.Я человек простой
Leshii вне форума Ответить с цитированием
Старый 25.09.2012, 13:45   #4
Владан
Пользователь
 
Аватар для Владан
 
Регистрация: 24.09.2012
Сообщений: 51
По умолчанию задание

звучит так :
Разработать программу табулирования функции, вывести их значения на экран. Разработать три варианта вычисления с использованием трех видов циклов, для контроля подсчитать сумму значений функций, результаты вывести отдельно в одном файле. Знак '^' означает 'в степени ".
y = (ln(x^2 + 1))^2 + x; інтервал : отрезок[2,6], шаг 0.5.

program Project1lb3;

{$APPTYPE CONSOLE}
//= (ln(x^2 + 1))^2 + x;
//інтервал : відрізок [2,6], крок 0.5;
uses
SysUtils,math;
var
Exp,X,a,b,h,y:real;

begin
Writeln( ' x y');
writeln(' while' );
a:=2;
b:=6;
h:=0.5;
X:=a;while x<=b+h/2 do
begin
Y:=Power((Ln(x*x+1)),2)+x;
Writeln(x:6:3,' ',y:6:3);
X:=x+h;
end;

Writeln( ' x y');
writeln(' for' );
a:=2;
b:=6;
h:=0.5;
X:=a;
while x<=b+h/2 do
begin
Y:=Power((Ln(x*x+1)),2)+x;
Writeln(x:6:3,' ',y:6:3);
X:=x+h;
End;

Writeln( ' x y');
writeln(' repeat' );
a:=2;
b:=6;
h:=0.5;
X:=x+h;
until x<=b+h/2;
begin
Y:=Power((Ln(x*x+1)),2)+x;
Writeln(x:6:3,' ',y:6:3);
End;
Readln;
end.

Последний раз редактировалось Владан; 25.09.2012 в 14:04.
Владан вне форума Ответить с цитированием
Старый 25.09.2012, 13:58   #5
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Код:
For I = 4 to 12 do
  begin
    X := I /2;
    Y :=  sqr(ln(sqr(X)+1)) + X;
  end;
а чего здесь сложного? можно ещё так сделать:
Код:
X := 2;
For I = 1 to 8 do
  begin
    X := X + 0,5;
    Y :=  sqr(ln(sqr(X)+1)) + X;
  end;
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 25.09.2012, 14:25   #6
Владан
Пользователь
 
Аватар для Владан
 
Регистрация: 24.09.2012
Сообщений: 51
По умолчанию спасибо)

!!!!!!!!!!!!!!!!!!!!!!!!!
Владан вне форума Ответить с цитированием
Старый 25.09.2012, 14:44   #7
Владан
Пользователь
 
Аватар для Владан
 
Регистрация: 24.09.2012
Сообщений: 51
По умолчанию

Цитата:
Сообщение от DiemonStar Посмотреть сообщение
Код:
For I = 4 to 12 do
  begin
    X := I /2;
    Y :=  sqr(ln(sqr(X)+1)) + X;
  end;
а чего здесь сложного? можно ещё так сделать:
Код:
X := 2;
For I = 1 to 8 do
  begin
    X := X + 0,5;
    Y :=  sqr(ln(sqr(X)+1)) + X;
  end;
ошибка
Владан вне форума Ответить с цитированием
Старый 25.09.2012, 14:59   #8
Leshii
Форумчанин
 
Регистрация: 26.07.2011
Сообщений: 376
По умолчанию

Что пишет? в каком месте ?
Конкретней говори, мы же не твой компилятор.
Люблю на ты.Я человек простой
Leshii вне форума Ответить с цитированием
Старый 25.09.2012, 16:33   #9
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

попробуйте переменные объявить:
Код:
var I : Integer;
     X, Y :  Real;
и ещё двоеточие не написал тут:
Код:
For I := 1 to 8 do
вот такой код работает без проблем:
Код:
var I : Integer;
    X, Y :  Real;
begin
X := 2;
For I := 1 to 9 do
  begin
    Y :=  sqr(ln(sqr(X)+1)) + X;
    X := X + 0.5;
  end;
end.
Правильно поставленная задача - три четверти решения.

Последний раз редактировалось DiemonStar; 25.09.2012 в 16:40.
DiemonStar вне форума Ответить с цитированием
Старый 25.09.2012, 21:42   #10
Владан
Пользователь
 
Аватар для Владан
 
Регистрация: 24.09.2012
Сообщений: 51
По умолчанию

спасибо)
а что в цикле repeat нужно переделать ?
Владан вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Цикл Repeat Anwen Помощь студентам 1 21.11.2010 16:08
Цикл while and Repeat ates Помощь студентам 5 14.05.2010 22:35
Цикл while-repeat Wasisualy Помощь студентам 1 18.12.2009 20:49
Цикл с предусловием. ( цикл while) Цикл с постусловием. (цикл repeat ... until) Mr.User Помощь студентам 9 23.11.2007 01:34