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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 31.10.2011, 17:33   #1
Женька Good
Форумчанин
 
Регистрация: 15.03.2011
Сообщений: 126
По умолчанию Одномерные массивы

Вот программа, необходимо посчитать сумму доходов, которые изменяются от 230 до 8500. сколько лет компания имела такую прибыль?
Года выводит по-порядку в столбец и прибыль тоже, а вот сумму и кол-во лет не получается....
помогите плз!
Код:
Program Mas1;
Uses Crt;
Type Mas=Array [1..10] of Real;
Var y:mas;
I,s,k,x:Integer;
Begin
CLRSCR;
S:=0;
Writeln('***************************');
Writeln('| God | Y |');
Writeln('***************************');
For i:=2000 to 2010 do
Begin;
y:=100*((ABS(cos(i*i-3.8)))/4.5-9.7*sin(i-3.1));
Writeln('| ', i:5,' | ', y:10:1,' |');
End;
Writeln('***************************');
For i:=2000 to 2010 do
Begin;
If (y>=230) and (y<=8500) then
s:=s+y;
K:=k+1;
End;
Writeln('Summa dohodov v predelax ot 230 do 8500 ==> ',s:0);
Writeln('Kolichestvo let, kogda firma imela takyu pribyl ==> ', k:0);
Readln;
End.

Последний раз редактировалось Stilet; 31.10.2011 в 18:21.
Женька Good вне форума Ответить с цитированием
Старый 31.10.2011, 22:41   #2
Leshii
Форумчанин
 
Регистрация: 26.07.2011
Сообщений: 376
По умолчанию

Код:
Program Mas1;
Uses Crt;
Type Mas=Array [1..10] of Real;
Var y:mas;
s,g:real;
i,k:integer;
Begin
CLRSCR;
S:=0;
K:=0;
for i:=2000 to 2010 do
begin
writeln('Y[',i,']=');
readln(Y[i]);
end;
Writeln('***************************');
Writeln('| God | Y |');
Writeln('***************************');
For i:=2000 to 2010 do
Begin
g:=100*((ABS(cos(y[i]*y[i]*y[i]-3.8)))/4.5-9.7*sin(y[i]-3.1));
Writeln('| ', i:5,' | ', abs(g):10:1,' |');
End;
Writeln('***************************');
For i:=2000 to 2010 do
s:=s+g;
If (s>230) and (s<8500) then
K:=k+1;
Writeln('Summa dohodov v predelax ot 230 do 8500 ==> ',abs(s):4:2);
Writeln('Kolichestvo let, kogda firma imela takyu pribyl ==> ', k:1);
Readln;
End.
Хотя, давай так.Я пока занят, но алгоритм могу сказать так.
Сравни суму которая получилась со всеми найдеными сумами за 10 лет, если будут найдены совпадения то увеличеваеш счётчик на 1.
Люблю на ты.Я человек простой

Последний раз редактировалось Leshii; 31.10.2011 в 23:22.
Leshii вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ОДНОМЕРНЫЕ МАССИВЫ MaHTeP Общие вопросы C/C++ 5 11.10.2010 20:18
одномерные массивы Женечка92 Помощь студентам 1 23.04.2010 20:59
Одномерные массивы maloy-rom Общие вопросы C/C++ 11 23.12.2009 18:47
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент LyaLya Помощь студентам 15 20.12.2009 14:12
C++ Одномерные массивы. rus_rock_no_dead Помощь студентам 1 20.01.2009 15:31