Вывод квадратов натуральных чисел

Задача: 

Вывести все квадраты натуральных чисел, не превосходящие данного числа N.
Пример: N=50 | 1 4 9 16 25 36 49

Алгоритм решения задачи: 
  1. Ввести число N.
  2. Присвоить x единицу.
  3. Пока y
    1. Возвести x в квадрат и присвоить полученное значение переменной y.
    2. Если y
    3. Увеличить значение x на единицу.
Программа на языке Паскаль: 

 
var
        x,y,N:integer;
begin
        {1 вариант}
        write('Enter N: ');
        readln(N);
        x:=1;
 
        while ydo begin
                y:=x*x;
                if ythen
                        write(y,' ');
                x:=x+1;
        end;
        writeln;
 
        {2 вариант}
        write('Enter N: ');
        readln(N);
        x:=1;
 
        repeat
                y:=x*x;
                if ythen
                        write(y,' ');
                x:=x+1;
        until y>N;
 
        readln
end.

Условный оператор if используется в цикле для того, чтобы не выводить последнее значение y, которое уже превосходит N.

Можно ли как-нибудь решить задачу проще? Да, если избавиться от переменной у

var x,n: integer;
begin
    write('n = ');
    readln(n);
    x := 1;
    while sqr(x) do begin
        write(sqr(x),' ');
        x := x + 1
    end;
 
readln
end.

Комментарии

Дан вещественный вектор

Дан вещественный вектор Х(Х1,Х2....,Х10). Умножить на 2 компоненты с нечетными номерами.

{Кодировка - Unicode,

{Кодировка - Unicode, написано на ABCPascal.net}

Var X : Array [1..10] Of Real;
    i : Byte;
 
Begin
     For i:=1 To 10 Do Begin
         write('введите координату x',i,' вектора');
         ReadLn(x[i]);
     End;
 
     write('Исходный вектор : ');
     For i:=1 To 10 Do Write(x[i],' ');
 
     For i:=1 To 10 Do 
         If (i mod 2)0 then x[i]:=2*x[i];
 
     write('Изменённый вектор : ');
     For i:=1 To 10 Do Write(x[i],' ');
 
End.

Выведите квадраты натуральных

Выведите квадраты натуральных чисел, не превосходящих 50

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

составить программу вычисления произведения квадратов натуральных чисел от 1 до 10. (1^2*2^2*3^2*...*10^2)

Помогите, пожалуйста, решить задачу.

Дан Файл F, содержащий сведения о сотрудниках учреждения, записанные по след.типу: фамилия, имя, отчество. Переписать эти сведения в файл G по типу: Фамилия И.О. Использовать тип запись.

помогите пожалуйста.

Составить таблицу кубов от 1 до 10

Составить таблицу кубов от 1 до 10

PROGRAM kuby;
   const N=10;
   var K,T:integer;
BEGIN
   k:=1;
   WHILE k=N DO
                           begin
                              t:=sqr (k)*k;
                              writeln (t);
                              k:=k+1;
                          end;
END.

Составить таблицу кубов от 1

Составить таблицу кубов от 1 до 10 в паскаль

Таблица кубов

var i:integer;
begin
for i:=1 to 10 do
writeln(i*i*i)
end.

Помогите пожалуйста.

Составить таблицу степеней 2 в квадрате. от 1до 10.

помогите пожалуйста

заданы 3 натуральных числа A B N (A

var A, B, N: integer;

var
    A, B, N: integer;
    k, m: integer;
    C: integer;
begin
    write('A='); readln(A);
    write('B='); readln(B);
    write('N='); readln(N);
    write('k='); readln(k);
    write('m='); readln(m);
 
    C := 0;
    if (A = N) and (B = N) then
        while C = N do begin
            C := k * A + m * B;
            if C = N then write(C, ' ');
            A := A + 1;
            B := B + 1;
        end;
        writeln;
readln;
end.

if внутри while требуется, чтобы не выводить последнее значение C, которое больше N.

Помогите решить

Помогите решить задачу:
Написать программу , которая находила бы значения a и b по расчётной формуле

Напишите по какой именно

Напишите по какой именно формуле??

помогите решить задачу

составить программу, позволяющую с помощью датчика случайных чисел сформировать матрицу (NxM). значения N и M ввести с клавиатуры.
Определить:
- минимальный элемент ниже побочной диагонали
- произведение ненулевых элементов последней строки.