ребят, помогите, пжлста, с парой программ на пасk

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

Сообщение снумрик » Чт дек 02, 2004 1:43 pm

женский мозг совсем не предназначен для программирования <!--emo&:)-->[img]style_emoticons/<#EMO_DIR#>/smile.gif[/img]<!--endemo-->

вообщем, вот.

вычислить следующую сумму и определить, при каком n произойдет переполнение строки
1^2+2^2+3^2+...+n^2

составить программу, кот. возводит число в куб, используя следующее свойство:
1^3=1
2^3=3+5
3^3=7+9+11
4^3=13+15+17+19

сост программу для:
(((((1?2)?3)?4)?5)?6)=35
снумрик
Призывник
 
Сообщений: 1
Зарегистрирован: Чт дек 02, 2004 1:30 pm
Пункты репутации: 0

Сообщение Night Angel » Чт дек 02, 2004 3:59 pm

1) Что значет переполнение строки, в паскале она 255 символов, чтобы досчитать до такого числа, придётся свою процедуру сложения написать.

2)
Код: выделить все
var i,j,k,s,t:integer;
begin
writeln;
write('n=');read(i);
k:=0;
for t:=1 to i do
begin
k := k+(t-1);
end;
t := 1;
for j := 1 to k do
t:= t+2;
for j:=i downto 1 do
begin
s := s + t;
t:=t+2;
end;
write('n^3=',s);
end.


3) долго думать
Auscultura et perpende - Выслушай и взвесь
Теперь я есть в <a href='http://www.livejournal.com/users/mrnight/' target='_blank'>LJ</a>
Night Angel
Полковник
 
Сообщений: 1160
Зарегистрирован: Ср сен 25, 2002 7:20 pm
Откуда: Belarus
Пункты репутации: 0

Сообщение Night Angel » Чт дек 02, 2004 4:55 pm

Вот по третей, очень неоптимизировано... Пофиксил.
Код: выделить все
var a,b,c,d,e: byte;

function def(znak,next:integer;curr:real):real;
begin
case znak of
1: def := curr + next;
2: def := curr - next;
3: def := curr / next;
4: def := curr * next;
end;
end;

function abc: real;
var t:real;
begin
t := 1;
t := def(a, 2, t);
t := def(b, 3, t);
t := def(c, 4, t);
t := def(d, 5, t);
t := def(e, 6, t);
abc := t;
end;

procedure put(a:integer);
begin
case a of
1: writeln('+');
2: writeln('-');
3: writeln('/');
4: writeln('*');
end;
end;

procedure out;
begin
put(a);
put(b);
put(c);
put(d);
put(e);
end;

begin
for a:=1 to 4 do
for b:=1 to 4 do
for c:=1 to 4 do
for d:=1 to 4 do
for e:=1 to 4 do
if abc = 35 then
begin
writeln('Result:');
out;
exit;
end;
end.
Последний раз редактировалось Night Angel Чт дек 02, 2004 5:05 pm, всего редактировалось 1 раз.
Auscultura et perpende - Выслушай и взвесь
Теперь я есть в <a href='http://www.livejournal.com/users/mrnight/' target='_blank'>LJ</a>
Night Angel
Полковник
 
Сообщений: 1160
Зарегистрирован: Ср сен 25, 2002 7:20 pm
Откуда: Belarus
Пункты репутации: 0


Вернуться в Программирование

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13

cron