Помощь - Поиск - Пользователи - Календарь
Полная версия: Сумма квадратов первых 100 натуральных чисел
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
-Len-
Сегодня нам задали прогу, где TP должен найти сумму квадратов первых ста натуральных чисел. Еще, информатиня сказала, что в каком-то обратном порядке. Но я так и не поняла, что это значит.
Помогите мне, пожалуйста, составить эту программку.
volvo
-Len-
blink.gif Ну, если в "обратном порядке" - значит, наверное, вот так:
Код
Var i: integer; s: LongInt;
Begin
 s := 0;
 For i := 100 DownTo 1 Do
   { увеличиваем сумму }

 { Выводим сумму }
End.
Guest
А без LongInt нельзя? Мы это не проходили.
Я только что напечатала, что могла, вот такой вариант подойдет:

Код
Program sdsdl;
uses crt;
var i: integer;
sum, x: real;
begin
clrscr;
writeln('Нахождение суммы квадратов первых ста натуральных чисел');
for i := 1 to 100 do
  begin
    write(i, ' = ');
    sum := sum + i
  end;
clrscr;
writeln('Сумма квадратов первых ста натуральных чисел = ',sum:2:1);
readln;
end.
-Len-
Volvo, я сейчас запустила твой вариант. Ничего не выводится, а где сумма квадратов там?

А я не давал полное решение, я дал алгоритм. Там где стоят комментарии - должен быть соответствующий код...
volvo
Цитата(-Len- @ 4.03.05 10:04)
найти сумму квадратов первых ста натуральных чисел...


Цитата(Guest @ 4.03.05 11:02)
А без LongInt нельзя? Мы это не проходили.


Довольно странное решение - задание на натуральные (то есть целые) числа, но сумма их - вещественная... wacko.gif Допустим. А что в программе делает строчка:
Код
write(i, ' = ');

?
-Len-
Строчку уберу, но я не могу понять, какой вариант правильный: информатине нужна сумма квадратов, да еще и обратный порядок...
Нужна ли в программе функция SQRT?
volvo
Цитата
я не могу понять, какой вариант правильный

Значит, так:
Код
for i := 1 to 100 do
 begin
   write(i, ' = ');
   sum := sum + i
 end;

Меняем на
Код
for i := 100 downto 1 do
 sum := sum + sqr(i);


Цитата
Нужна ли в программе функция SQRT?

Только не SQRT (это вычисление квадратного корня), а SQR (вот это как раз вычисление квадрата числа)
-Len-
Спасибо огромное! Я надеюсь, что этот вариант ей понравится smile.gif
Len
У меня так и не получилась программа, которая находит сумму квадратов первых ста натуральных чисел. Просто должна сразу в одной строчке выводится сумма КВАДРАТОВ всех этих чисел. У меня не получается ее написать.
Помогите, пожалуйста.
volvo
Объединяя все вышесказанное:
Код
Program sdsdl;
uses crt;
var i: integer; sum: real;
begin
 clrscr; sum := 0;
 writeln('Нахождение суммы квадратов первых ста натуральных чисел');
 for i := 100 downto 1 do
   sum := sum + sqr(i);
 writeln('Сумма квадратов первых ста натуральных чисел = ',sum:2:1);
 readln;
end.
Len
Это снова я и с этой же программой. Ситуация уже критическая. Завтра нам выставят двойки
за несданные программы. А у меня их две.
Теперь-то я наконец поняла условия этой задачи.
Условие такое, что нужно найти сумму чисел обратных квадратам первых ста натуральных чисел. То есть, #2 в квадрате=4, а обратное число 1/4.
И так далее до ста. Но на экран должна выводится сумма этих обратных чисел, какое-то одно число.
virt
Код
rogram sdsdl;
uses crt;
var i: integer; sum: real;
begin
clrscr; sum := 0;
writeln('Нахождение суммы [!!!!!!!!!!!]чисел обратных квадратам[!!!!!!!!!!!] первых ста натуральных чисел');
for i := 100 downto 1 do
  sum := sum + 1/sqr(i);
writeln('Сумма [!!!!!!!!!!!!!!!]чисел обратных квадратам [!!!!!!!!!!]первых ста натуральных чисел = ',sum:2:1);
readln;
end.


берем прогу volvo и пишем в\место sqr(i) :: 1/sqr(i)
Len
Не сумма квадратов, а сумма чисел обратных квадратам первых ста натуральных чисел.

Len, ну так в чем проблема? Что, самостоятельно уже даже текст поменять не можете? angry.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.