Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Задача на организацию цикла

17K
22 апреля 2006 года
natus
3 / / 22.04.2006
Помогите прогу написать. Сформировать последовательность,элементы которой вычисляются по формуле A=N/(N+1),N=1,2,...20.
242
22 апреля 2006 года
Оlga
2.2K / / 04.02.2006
Цитата:
Originally posted by natus
Помогите прогу написать. Сформировать последовательность,элементы которой вычисляются по формуле A=N/(N+1),N=1,2,...20.



Ув. natus!
У меня к вам большая просьба, что бы вы давали название ветке по теме.
Читайте правила, пожалуйста.
Также для вас будет лучше, если вы сами попытаетесь решить задачу. А на форум будете обращаться с конкретными проблемами выкладавая код который вы уже написали.
п.с. по правилам форума ваше сообщение нужно было бы удалить. Удачи :).

17K
22 апреля 2006 года
natus
3 / / 22.04.2006
Program 111;
Var N,A;integer;
begin
N:=1;
for N:=1 to 20 do;
A:=N/(N+1);
writeln(A=N/(N+1));
readln;
end.
Что можно с этим сделать?
2.2K
23 апреля 2006 года
fogg
114 / / 21.02.2006
Цитата:
Originally posted by natus
Program 111;
Var N,A;integer;
begin
N:=1;
for N:=1 to 20 do;
A:=N/(N+1);
writeln(A=N/(N+1));
readln;
end.
Что можно с этим сделать?


Ну ты даешь...ошибка почти в каждом слове...я немного не понял вопрос...
ну вроде вот то, что ты хотел:

 
Код:
Var N,A:integer;
begin
for N:=1 to 20 do
A:=N/(N+1);
writeln(A);
readln;
end.

Нафиг оно те вобще надо?
===================================
Редактировал
===================================
ага точно забыл, ведь integer - эт целые числа

 
Код:
Var N:integer;
A:real;
begin
for N:=1 to 20 do
A:=N/(N+1);
writeln(A);
readln;
end.

иль так
 
Код:
Var N,A:integer;
begin
for N:=1 to 20 do
A:=round(N/(N+1));
writeln(A);
readln;
end.
1.8K
23 апреля 2006 года
LastSoul
279 / / 28.12.2005
Если не округлять N/(N+1), то переменной A не помешало бы сделать тип Real
И мне кажется, что надо будет написать так:
 
Код:
Program [COLOR=red]1[/COLOR]11;
   Здесь [COLOR=red]^[/COLOR] нельзя ставить цифры (ругаться будет)!
 ...
[COLOR=green] Begin[/COLOR]
  A:=N/(N+1);
  WriteLn(A);
[COLOR=green] End;[/COLOR]
 ...

242
23 апреля 2006 года
Оlga
2.2K / / 04.02.2006
Цитата:
Originally posted by LastSoul
Если не округлять N/(N+1), то переменной A не помешало бы сделать тип Real
И мне кажется, что надо будет написать так:
 
Код:
...
[COLOR=green] Begin[/COLOR]
  A:=N/(N+1);
  WriteLn(A);
[COLOR=green] End;[/COLOR]
 ...


Все правильно, но одна проблема есть: деление целочисленных переменных (integer) даст целый результат. Например:
5 / 2 = 2
но
5.0 / 2 = 2.5
Не думаю что Паскаль в данном вопросе исключение => нужно преобразовать в тип real одно из целых чисел. В С это так делают:
А := N*1.0/(N+1);
OR
A := (real)N/(N+1);
Может быть один из вариантов в Паскаль сработает.

247
23 апреля 2006 года
wanja
1.2K / / 03.02.2003
Цитата:
Originally posted by OlgaKr
Не думаю что Паскаль в данном вопросе исключение => нужно преобразовать в тип real одно из целых чисел.


Паскаль - исключение. Можно не преобразовывать.

242
23 апреля 2006 года
Оlga
2.2K / / 04.02.2006
Цитата:
Originally posted by wanja
Паскаль - исключение. Можно не преобразовывать.


Очень интересное исключение, и на мой взгляд весьма стрнное :).

1.8K
23 апреля 2006 года
LastSoul
279 / / 28.12.2005
Цитата:
Originally posted by OlgaKr
Все правильно, но одна проблема есть: деление целочисленных переменных (integer) даст целый результат. Например:
5 / 2 = 2


Видимо в C автоматически выводит целое число, отсекая все остальное (в паскале такое можно провернуть при помощи функции Trunc() ).
В pas немного подругому, здесь безразницы 5 или 5.0 результат получается один и тотже (2.5000000000E+00), который можно исправить при выводе на экран таким образом ( Write(5/2:0:1) - выведет 2.5 )

Цитата:

А := N*1.0/(N+1);
OR
A := (real)N/(N+1);
Может быть один из вариантов в Паскаль сработает.


К сожалению ни один из этих вариантов не работае в паскале. Если в var указывается переменной тип integer, то хрен этой переменной присвоешь другой тип в другом месте проги, если конечно var не относиться к какой-нибудь процедуре или функции. Хотя менять тип в runtime можно при помощи указателей т.е. динамических переменных
>

5
23 апреля 2006 года
hardcase
4.5K / / 09.08.2005
В С операция "/" перегружена как целочисленное деление и как вещественное деление. В зависимости от типов аргументов компилер выбирает трактовку.

В Паскале операция "/" трактуется единственным образом - как вещественное деление и операнды автоматически приводятся в нужный вещественный формат. И в паскале есть операция DIV - это целочисленное деление (с остатком) операнды должны быть только одного из целочисленных типов.
17K
23 апреля 2006 года
natus
3 / / 22.04.2006
Задали по информатике в универе,а информатика у нас самый проблемный предмет....
252
24 апреля 2006 года
koderAlex
1.4K / / 07.09.2005
Цитата:
Originally posted by natus
Program 111;
Var N,A:integer;
begin
N:=1;
for N:=1 to 20 do;
A:=N/(N+1);
writeln(A=N/(N+1));
readln;
end.
Что можно с этим сделать?


Program iii;
Var N:integer;
begin
for N:=1 to 20 do writeln(N/(N+1):1:7);
readln;
end.

2.2K
24 апреля 2006 года
fogg
114 / / 21.02.2006
Цитата:
Originally posted by koderAlex
Program iii;
Var N;integer;
begin
for N:=1 to 20 do writeln(N/(N+1):1:7);
readln;
end.


Эх ты периписал с ошибкой!
Var N:integer;
А идея хорошая))

252
24 апреля 2006 года
koderAlex
1.4K / / 07.09.2005
Цитата:
Originally posted by fogg
Эх ты периписал с ошибкой!
Var N:integer;
А идея хорошая))


апшивбки есчо бивайут )). шифт недожал .:D

350
14 июня 2006 года
cheburator
589 / / 01.06.2006
Жуть... Такой простой вопрос вызвал столь ожесточенный спор :)
3.6K
14 июня 2006 года
CrazyTimon
125 / / 13.02.2006
Код:
program iii;
 
procedure Schet;
var
 n:integer;
begin
 for N:=1 to 20 do writeln(N/(N+1):1:7);
 readln;
end;
 
begin
 Schet;
end.

А ещё так мона!!=)

глазки наверх подыми, и увидишь что такое решение уже было :-)
не надо флудить плиз
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог