Paskal - циклы

За вознаграждение или нахаляву (если повезёт)

Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill

Ответить
Digi
Сообщения: 7
Зарегистрирован: 02 апр 2007, 12:45

Стоимость акций растёт на протяжений 6 месяцев, каждый месяц на 0.6%. Наити среднюю стоимость акции за эти полгода, если известно, что начальная стоимость их была К$

задачка элементарная, ...одна проблема - Паскаль. что, куда, как ...непонятно:-(
Absurd
Сообщения: 1228
Зарегистрирован: 26 фев 2004, 13:24
Откуда: Pietari, Venäjä
Контактная информация:

Зачем тебе циклы? Набежавшие деньги вычисляются по формуле C * exp (r * t), где C - начальная стоимость, r - процент в виде 0.06, t - время.
2B OR NOT(2B) = FF
Digi
Сообщения: 7
Зарегистрирован: 02 апр 2007, 12:45

возможно так было бы проще, но мне нужно решить с помошью циклов.
Аватара пользователя
somewhere
Сообщения: 1858
Зарегистрирован: 31 авг 2006, 17:14
Откуда: 71 RUS
Контактная информация:

Код: Выделить всё

Uses Crt;

Const
Monthes  = 12;

var
Prices   : Array [1..Monthes] of Real;
Cost     : Real;
Course   : Real;
Avg      : Real;
X        : Integer;

begin
ClrScr;
Cost := 50;
Course := 0.6;
Prices[1] := Cost;
Avg := Cost;
For x:=2 to Monthes do
   begin
   Prices[x] := Prices[X-1]*(1+Course/100);
   Writeln('Month ',X,': ',Prices[X]:6:2);
   Avg := Avg + Prices[X];
   end;
Writeln('Average : ', Avg/Monthes:6:2);
end.
It's a long way to the top if you wanna rock'n'roll
Digi
Сообщения: 7
Зарегистрирован: 02 апр 2007, 12:45

somewhere,

это Паскаль? ..какие то незнакомые слова
BBB
Сообщения: 1298
Зарегистрирован: 27 дек 2005, 13:37

Digi писал(а):somewhere,

это Паскаль? ..какие то незнакомые слова
фигассе....

(может, Digi пишет на русифицированном Паскале?
или... [см.внимательно сабж] на языке Paskal ?)
Calioka
Сообщения: 1
Зарегистрирован: 03 апр 2007, 16:56

цикл далжен выглядеть следующим образом:

for i:=1 to 6 do
K:=K+0,006*K;

И всё вроде должен работать
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Ага, а среднее считать кто будет? А вот насчет массива согласен, вряд ли он тут нужен.
Короче, берем среднее арифметическое из двух кодов

Код: Выделить всё

K:=50;
avg:=0;
for i:=0 to 6 do
begin 
  avg:=avg+k;
  k:=k*1.006;
end;
writeln(avg/7);
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Ответить