01.12.2009, 23:24 | #1 (ссылка) |
Стажёр
Регистрация: 16.02.2009
Сообщений: 1,984
Репутация: 129
|
Pascal нужна помощь, совсем запутался (
Часть II
Задание: Написать программу с использованием трех операторов цикла: арифметического, предусловием и постусловием. Программа должна выводить на экран (при одинаковых начальных параметрах) три ответа: первый - полученный с помощью арифметического оператора, второй - с помощью оператора цикла с предусловием и третий - с помощью оператора цикла с постусловием. Написать программу, которая по заданному натуральному значению вычисляет результат выражения: пытался сделать, получилось вот что, Program lab522; Var i,n : integer; p : real; Begin Write('n='); ReadLn(n); i:=1; For i:= 1 to n do begin p:=(2*n)/(2*n+1); end; WriteLn('при n=',n, ' значение выражения= ', p); While i<=n do begin p:=(2*n)/(2*n+1); end; WriteLn('при n=',n, ' значение выражения= ', p); Repeat p:=(2*n)/(2*n+1); Until i>n; WriteLn('при n=',n, ' значение выражения= ', p); End. что тут неправильно?? выложите плиз правильный код,заранее благодарю |
02.12.2009, 00:06 | #2 (ссылка) | |
Новичок
Регистрация: 23.11.2009
Сообщений: 413
Репутация: 30
|
Цитата:
должно быть так: begin p:=(2*n)/(2*n+1); i:=i+1; end; WriteLn('при n=',n, ' значение выражения= ', p); без указанного мной действия программа должна циклиться |
|
02.12.2009, 00:45 | #4 (ссылка) |
Эксперт
Регистрация: 08.09.2009
Сообщений: 10,716
Репутация: 960
|
Если я еще правильно помню школный курс по Паскалю
Код:
Program lab522; Var i,n : integer; p : real; Begin Write('n='); ReadLn(n); i:=0; For i:=i+1 to n do begin p:=(2*n)/(2*n+1); end; WriteLn('при n=',n, ' значение выражения= ', p); i:=0; While i>=n do begin i:=i+1; p:=(2*n)/(2*n+1); end; WriteLn('при n=',n, ' значение выражения= ', p); i:=0; Repeat i:=i+1; p:=(2*n)/(2*n+1); Until i>n; WriteLn('при n=',n, ' значение выражения= ', p); End. |
08.12.2009, 19:26 | #9 (ссылка) |
Стажёр
Регистрация: 16.02.2009
Сообщений: 1,984
Репутация: 129
|
вот:
Program lab522; Var i,n : integer; p : real; Begin Write('n='); ReadLn(n); p:=1; i:=1; For i:=1 to n do begin p:=(2*i)/(2*i+1)*p; i:=i+1; end; WriteLn('при n=',n, ' значение выражения= ', p); p:=1; i:=1; While i<=n do begin p:=(2*i)/(2*i+1)*p; i:=i+1; end; WriteLn('при n=',n, ' значение выражения= ', p); p:=1; i:=1; Repeat p:=(2*i)/(2*i+1)*p; i:=i+1; Until i>n; WriteLn('при n=',n, ' значение выражения= ', p); End. с while и repeat нормально, а вот for считает не правильно....думаю над этим второй час |
Ads | |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
нужна помощь | Александр Горбачёв | Железо | 4 | 05.12.2010 13:40 |
нужна помощь!!! | moon11954 | Железо | 22 | 16.08.2010 10:07 |
Что делать если денег совсем нету, но срочно нужна хорошая видеокарта??? | Никита_1 | Железо | 14 | 15.03.2010 09:19 |
Нужна помощь!!! | Muctuk | Железо | 1 | 25.03.2009 22:17 |
Нужна помощь | zik3000 | Железо | 21 | 16.02.2009 21:26 |
Нужна помощь!!! | FAST | Железо | 2 | 06.02.2009 11:56 |
Нужна помощь в DSL | ANARHIST | Интернет и сети | 1 | 15.01.2009 10:41 |
Нужна помощь | Романыч Я | Периферия | 1 | 06.01.2009 18:36 |
нужна помощь | Vados | Железо | 5 | 05.01.2009 23:43 |
Нужна помощь!!! | oxygenius14 | Игры | 2 | 04.01.2009 03:12 |
нужна помощь!!! | 555maykl | Железо | 1 | 01.10.2008 03:05 |