Посреди чисел 1 до N найдите и выведите на экран такие,запись

Посреди чисел 1 до N найдите и выведите на экран такие,запись которых совпадают с заключительными цифрами их квадрата (например 6 в квадрате=36).N введите с клавиатуры.Буду очень благодарен за решение(и если вас не сделает труднее объяснение,т.к я новый в этом деле и хотел бы выучиться у знающих людей)спасибо за внимание.

Задать свой вопрос
Oksana Chmarina
если никто не ответит - стучись в друзья. На данный момент нету времени делать.
2 ответа
ОТДЕЛ Задание+;
Употребляет Вывод ИЗ "...\Отделы\Размен\", Приём;

ПЕР
  N, сч, ч, кв: ЦЕЛ;

УКАЗ
  N := Приём.Число();
  ОТ сч := 0 ДО N ВЫП
    кв := сч * сч;
    ч := сч;
    КОЛЬЦО
      ПОКА ч gt; 0 И кв gt; 0 ВЫП
        ЕСЛИ ч ОСТАТОК 10 кв ОСТАТОК 10 ТО
          ВЫХОД
        КОН;
        ч := ч Разделять 10;
        кв := кв ДЕЛИТЬ 10
      КОН;
      Вывод.ЧЦел("^%d", сч, 0, 0, 0)
    КОН
  КОН

КОН Задание.


Отдел "Приём", раз уж Издатель не успел его включить в выпуск (желая стоило бы разглядывать это как стандартный ввод):

ОТДЕЛ Приём; 
Употребляет
   ОС ИЗ "...\Отделы\Размен\",
   КОС ИЗ "...\Отделы\Обмен\",
  Ввод ИЗ "...\Отделы\Размен\",
   Вывод ИЗ "...\Отделы\Размен\",
   Символ ИЗ "...\Отделы\Другое\"; 

Задачка Строка-(строчка+: РЯД ИЗ Символ);
 (* Текстовая строка *)
 ПЕР
   отКлавиш: Ввод.ОтКлавиш;
   отМышки: Ввод.ОтМышки;
   Счётчик: ЦЕЛ;
 УКАЗ
   Счётчик := 0;
   КОЛЬЦО
     ЕСЛИ КОС.Опрос(отКлавиш, отМышки) = Ввод.клавиши ТО
       ЕСЛИ отКлавиш.символ = 0DX ТО
         ЕСЛИ Счётчик lt; РАЗМЕР(строка) ТО строчка[Счётчик] := 0X КОН;
         ВЫХОД
       АЕСЛИ отКлавиш.код = 08H ТО
          ЕСЛИ Счётчик gt; 0 ТО
            строка[Счётчик-1] := 0X; УМЕНЬШИТЬ(Счётчик);
            Вывод.ЗнакЦепи(отКлавиш.символ); Вывод.ЗнакЦепи(" ");
            Вывод.ЗнакЦепи(отКлавиш.символ)
          КОН
       АЕСЛИ (отКлавиш.код = 2DH) И (ОС.РазмерЦепочкиОбменника() 0) ТО
         ПОКА Счётчик gt; 0 ВЫП
           строка[Счётчик-1] := 0X; УМЕНЬШИТЬ(Счётчик);
           Вывод.ЗнакЦепи(8X); Вывод.ЗнакЦепи(" "); Вывод.ЗнакЦепи(8X)
         КОН;
         ОС.ЦепочкуИзОбменника(строка);
         ЕСЛИ ОС.РазмерЦепочкиОбменника() gt; РАЗМЕР(строчка) ТО
           Счётчик := РАЗМЕР(строчка)
         По другому Счётчик := ОС.РазмерЦепочкиОбменника() КОН;
         Вывод.Цепь(строчка)
       АЕСЛИ отКлавиш.знак = 0X ТО
       ИНАЧЕ
         ЕСЛИ Счётчик lt; РАЗМЕР(строчка) ТО
           строчка[Счётчик] := отКлавиш.символ;
           Прирастить(Счётчик);
           Вывод.ЗнакЦепи(отКлавиш.знак)
         КОН
       КОН
     По другому ОС.Дремать(50) КОН
   КОН
КОН Строка; 

Задачка Число-(): ЦЕЛ;
(* Целое число *)
ПЕР
   отКлавиш: Ввод.ОтКлавиш;
   отМышки: Ввод.ОтМышки;
   Счётчик, сч: ЦЕЛ;
   Итог: ЦЕЛ;
   Буфер: ДОСТУП К РЯД ИЗ ЗНАК;
   Отрицательное: КЛЮЧ;
УКАЗ
   Итог := 0; Счётчик := 0; Отрицательное := ОТКЛ;
   КОЛЬЦО
     ЕСЛИ КОС.Опрос(отКлавиш, отМышки) = Ввод.клавиши ТО
       ЕСЛИ отКлавиш.символ = 0DX ТО
         ЕСЛИ Отрицательное ТО ВОЗВРАТ -Итог ИНАЧЕ ВОЗВРАТ Итог КОН
       АЕСЛИ отКлавиш.код = 08H ТО
         ЕСЛИ Счётчик gt; 0 ТО
          Итог := Итог Разделять 10;
           Вывод.ЗнакЦепи(отКлавиш.символ); Вывод.ЗнакЦепи(" "); Вывод.ЗнакЦепи(отКлавиш.символ); УМЕНЬШИТЬ(Счётчик)
        АЕСЛИ Отрицательное ТО
          Отрицательное := ОТКЛ;
          Вывод.ЗнакЦепи(отКлавиш.символ); Вывод.ЗнакЦепи(" "); Вывод.ЗнакЦепи(отКлавиш.знак)
        КОН
       АЕСЛИ (отКлавиш.код = 2DH) И (ОС.РазмерЦепочкиОбменника() 0) ТО
         ПОКА Счётчик gt; 0 ВЫП
           УМЕНЬШИТЬ(Счётчик); Вывод.ЗнакЦепи(8X); Вывод.ЗнакЦепи(" "); Вывод.ЗнакЦепи(8X)
         КОН;
         ЕСЛИ Отрицательное ТО
          Отрицательное := ОТКЛ; Вывод.ЗнакЦепи(8X); Вывод.ЗнакЦепи(" "); Вывод.ЗнакЦепи(8X)
        КОН;
        Результат := 0;
         Сделать(Буфер, ОС.РазмерЦепочкиОбменника());
         ОС.ЦепочкуИзОбменника(Буфер^);
         ЕСЛИ (Буфер[0] gt;= "0") И (Буфер[0] lt;= "9") ТО
           Результат := Итог * 10 + (ВЦЕЛ(Буфер[0]) - ВЦЕЛ("0"));
           Вывод.ЗнакЦепи(Буфер[0]); Прирастить(Счётчик)
         АЕСЛИ Буфер[0] = "-" ТО Вывод.ЗнакЦепи("-"); Отрицательное := ВКЛ КОН;
        ОТ сч := 1 ДО РАЗМЕР(Буфер^)-1 ВЫП
           ЕСЛИ (Буфер[сч] gt;= "0") И (Буфер[сч] lt;= "9") ТО
             Результат := Итог * 10 + (ВЦЕЛ(Буфер[сч]) - ВЦЕЛ("0"));
             Вывод.ЗнакЦепи(Буфер[сч]); Прирастить(Счётчик)
           КОН
         КОН;
         Буфер := ПУСТО
       АЕСЛИ (отКлавиш.символ = "-") И (НЕ Отрицательное) ТО
         ЕСЛИ Итог = 0 ТО Отрицательное := ВКЛ; Вывод.ЗнакЦепи("-") КОН
      АЕСЛИ отКлавиш.символ = 0X ТО
       АЕСЛИ (Итог lt; МАКС(ЦЕЛ) Разделять 10) И ((отКлавиш.символ gt;= "0") И (отКлавиш.символ lt;= "9")) ТО
         Итог := Итог * 10 + (ВЦЕЛ(отКлавиш.символ) - ВЦЕЛ("0"));
         Вывод.ЗнакЦепи(отКлавиш.символ); Прирастить(Счётчик)
       КОН
     ИНАЧЕ ОС.Спать(50) КОН
   КОН
КОН Число; 

Задачка Ожидать-;
(* Простаиваем, пока не будет нажата неважно какая кнопка *)
ПЕР
   отКлавиш: Ввод.ОтКлавиш;
   отМышки: Ввод.ОтМышки;
УКАЗ
   ПОКА КОС.Опрос(отКлавиш, отМышки) Ввод.кнопки ВЫП
     ОС.Почивать(50)
   КОН
КОН Ожидать; 

КОН Приём.
1. Современный вариант

// PascalABC.NET 3.2, сборка 1362 от 14.12.2016
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('N=');
  Range(1,n).Select(i-gt;(i.ToString,(i*i).ToString)).
    Where(t-gt;t[0]=t[1].Right(t[0].Length)).Println;
end.

Пример
N= 1000
(1,1) (5,25) (6,36) (25,625) (76,5776) (376,141376) (625,390625)

2. А вот так примерно учат в большинстве школ

var
  n,i,j,li,li2:integer;
  si,si2:string;
begin
  Write('N= '); Read(n);
  for i:=1 to n do begin
    Str(i,si);
    li:=Length(si);
    Str(i*i,si2);
    li2:=Length(si2);
    si2:=Copy(si2,li2+1-li,li);
    if si=si2 then Write('(',si,',',i*i,') ')
    end
end.
, оставишь ответ?
Имя:*
E-Mail:


Последние вопросы
Во сколько раз число атомов кислорода в земной коре больше числа

Химия.

Составить монолог от имени дневника двоечника 7-10 предложений

Русский язык.

Рассматривая литературный язык как сложное взаимодействие книжного языка и разговорного,В.И.Чернышёв горячо

Разные вопросы.

Арабы входят в __________________ групп народов. Местом расселения арабов с незапамятных

Разные вопросы.

Грузовой автомобиль марки краз за одну поездку может доставить 7.500 кирпичей

Математика.

Определить предложения какие они по цели высказывания и по интонации

Русский язык.

"Три толстяка" Называли эту площадь Площадью Звезды последующей причине.

Русский язык.

на одной грядке коротышки посадили 3 ряда морковок по 8 штук

Разные вопросы.

эссе на тему какое образование дается в каждой семье

Қазақ тiлi.

Put the verb in brackets into the Present Indefinite. 1The Volga ,

Английский язык.

Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт