Вывести квадраты целых чисел от А до В

Cristine

Задача: вывести квадраты целых чисел от А до В. найти среднее арифметическое квадратов чисел (значение А и В вводится с клавиатуры, A
3 ответа

Cristine

Если имеется в виду, что от A до B включительно, то
procedure TForm1.Button1Click(Sender: TObject);
var
i, a, b:integer;
s:string;
begin
a :=strtoint(edit1.Text);
b :=strtoint(edit2.Text);
s :='';
for i := a to b do
  s:=s+' '+inttostr(i*i);
 ShowMessage('Квадраты чисел от '+inttostr(a)+' до '+inttostr(b)+#10#13+s); //вывод
 
end;
 
end.
С подсчетом сред. арифметического значения квадратов чисел полный код будет таким
procedure TForm1.Button1Click(Sender: TObject);
var
i, a, b, k, sum:integer;
 s:string;
 sa:real;
begin
a :=strtoint(edit1.Text);
b :=strtoint(edit2.Text);
s :='';
sum :=0; k :=0;
for i := a to b do
 begin
  s:=s+' '+inttostr(i*i); //получаем квадраты чисел в промежутке
 sum :=sum+(i*i);
 inc(k); //ищем кол-во квадратов
 sa :=sum/k; //считаем сред. арифм. квадратов чисел в промежутке
 end;
  ShowMessage('Квадраты чисел от '+inttostr(a)+' до '+inttostr(b)+#10#13+s);
  ShowMessage('Сред. арифм. квадратов чисел от '+inttostr(a)+' до '+inttostr(b)+#10#13+floattostr(sa));
end;
 
end.
Не заметил сразу в условии


Cristine

я вот это задание делала немного иначе, но мой способ где-то ошибочный, не могу разобраться...
program qq;
var
a,b,i,c:integer;
d:real;
begin
readln(a,b);
for i:=a to b do
begin
writeln(' число - ',i,' квадрат числа - ',i*i, ' куб числа - ' ,i*i*i,
 ' среднее арифметическое квадратов чисел ', d );
end;
readln;
begin
c:= i*i end;
  begin
    d:= (i*i)/(b-a+1)   end;
  
end.


Cristine

Причем тут куб чисел? Я Вам уже скинул готовый код. Если нужен на Pascal, то вот
program z1;
var
i, a, b, k, sum:integer;
 s:string;
 sa:real;
begin
Writeln('Введите начальное число');
Write('->');
Read(a);
Writeln('Введите конечное число');
Write('->');
Read(b);
s :='';
sum :=0; k :=0;
for i := a to b do
 begin
  s:=s,' ',str(i*i); //получаем квадраты чисел в промежутке
 sum :=sum+(i*i);
 inc(k); 
 sa :=sum/k; //считаем сред. арифм. квадратов чисел в промежутке
 end;
  Writeln;
  Writeln('Квадраты чисел от ',a,' до ',b,': ',s);
  Writeln;
  Writeln('Сред. арифм. квадратов чисел от ',a,' до ',b,': ',sa);
  readln;
end.