Решение задач. День шестой. Задачи Integer 11-20


integer11-20

Здравствуйте, дорогие читатели и юные поклонники программирования. Что является важнейшим этапом  изучения программирования? Решение задач! Именно этим мы с вами сегодня и займемся. Целых десять задач  Integer11-20.  Если для вас эти задачи уже слишком легки, вы решаете их с закрытыми глазами и уже чувствуете, что готовы к следующему этапу обучения, то вам следует приготовиться. Следующий урок будет про особенности  PascalABC.NET.  Но не волнуйтесь, вместе с нами вы познаете почти все тонкости Паскаля в его современной интерпретации.

Integer11°. Дано трехзначное число. Найти сумму и произведение его цифр.

Program Integer_11;

var chislo, sotni, desyatki, edinizi, summa, proizv:integer;

begin
  write ('Введите число: ');
  readln (chislo);
  sotni:= chislo div 100;
  desyatki:= chislo mod 100 div 10;
  edinizi:= chislo mod 10;
  summa:= sotni + desyatki + edinizi;
  proizv:= sotni * desyatki * edinizi;
  writeln ('Сумма всех цифр числа: ', summa);
  writeln ('Произведение всех цифр числа: ', proizv);
end.

Integer12. Дано трехзначное число. Вывести число, полученное при прочтении исходного числа справа налево.

Program Integer_12;

var chislo, sotni, desyatki, edinizi:integer;

begin
  write ('Введите число: ');
  readln (chislo);
  sotni:= chislo div 100;
  desyatki:= chislo mod 100 div 10;
  edinizi:= chislo mod 10;
  chislo:= edinizi * 100 + desyatki * 10 + sotni;
  writeln ('Полученное число: ', chislo);
end.

Integer13. Дано трехзначное число. В нем зачеркнули первую слева цифру и приписали ее справа. Вывести полученное число.

Program Integer_13;

var chislo, sotni, ost:integer;

begin
  write ('Введите число: ');
  readln (chislo);
  sotni:= chislo div 100;
  ost:= chislo mod 100;
  chislo:= ost * 10 + sotni;
  writeln ('Полученное число: ', chislo);
end.

Integer14. Дано трехзначное число. В нем зачеркнули первую справа цифру и приписали ее слева. Вывести полученное число.

Program Integer_14;

var chislo, edinizi, ost:integer;

begin
  write ('Введите число: ');
  readln (chislo);
  edinizi:= chislo mod 10;
  ost:= chislo div 10;
  chislo:= edinizi * 100 + ost;
  writeln ('Полученное число: ', chislo);
end.

Integer15. Дано трехзначное число. Вывести число, полученное при перестановке цифр сотен и десятков исходного числа (например, 123 перейдет в 213).

Program Integer_15;

var chislo, sotni, desyatki, edinizi:integer;

begin
  write ('Введите число: ');
  readln (chislo);
  sotni:= chislo div 100;
  desyatki:= chislo mod 100 div 10;
  edinizi:= chislo mod 10;
  chislo:= desyatki * 100 + sotni * 10 + edinizi;
  writeln ('Полученное число: ', chislo);
end.

Integer16. Дано трехзначное число. Вывести число, полученное при перестановке цифр десятков и единиц исходного числа (например, 123 перейдет в 132).

Program Integer_16;

var chislo, sotni, desyatki, edinizi:integer;

begin
  write ('Введите число: ');
  readln (chislo);
  sotni:= chislo div 100;
  desyatki:= chislo mod 100 div 10;
  edinizi:= chislo mod 10;
  chislo:= sotni * 100 + edinizi * 10 + desyatki;
  writeln ('Полученное число: ', chislo);
end.

Integer17. Дано целое число, большее 999. Используя одну операцию деления нацело и одну операцию взятия остатка от деления, найти цифру, соответствующую разряду сотен в записи этого числа.

Program Integer_17;

var chislo, sotni:integer;

begin
  write ('Введите число: ');
  readln (chislo);
  sotni:= chislo div 100 mod 10;
  writeln ('Найденная цифра: ', sotni);
end.

Integer18. Дано целое число, большее 999. Используя одну операцию деления нацело и одну операцию взятия остатка от деления, найти цифру, соответствующую разряду тысяч в записи этого числа.

Program Integer_18;

var chislo, tis:integer; //tis-название переменной, соответстующей разряду тысяч

begin
  write ('Введите число: ');
  readln (chislo);
  tis:= chislo div 1000 mod 10; 
  writeln ('Найденная цифра: ', tis);
end.

Integer19. С начала суток прошло N секунд (N — целое). Найти количество полных минут, прошедших с начала суток.

Program Integer_19;

var N, min:integer;

begin
  write ('Введите N: ');
  readln (N);
  min:= N div 60;
  writeln ('Количество полных минут, прошедших с начала суток: ', min);
end.

Integer20°. С начала суток прошло N секунд (N — целое). Найти количество полных часов, прошедших с начала суток.

Program Integer_20;

var N, hours:integer;

begin
  write ('Введите N: ');
  readln (N);
  hours:= N div 3600;
  writeln ('Количество полных часов, прошедших с начала суток: ', hours);
end.

Вот и все, дорогие друзья! Ждите новые уроки и заходите к нам на сайт почаще. Если вам понравилась эта статья, обязательно расскажите о нас вашим друзьям из любой социальной сети, может быть, они тоже хотят стать великими программистами!

  1. в integer12 можно без переменных

    read(a);
    write(a mod 100 mod 10);
    write(a mod 100 div 10);
    write(a div 100);

  2. решение Interger11 неправильно, но у меня решение с четырёхзначным числом
    ВОТ РЕШЕНИЕ:
    program z2;
    var tusyachi,sotni,desyatki,edinizi,chislo,sum,proizv:integer;
    begin
    write(‘Четырёхзначное число=’);
    read(chislo);
    tusyachi:= chislo div 1000;
    sotni:= chislo div 100;
    sotni:= sotni mod 10;
    desyatki:= chislo div 10;
    desyatki:=desyatki mod 10;
    edinizi:= chislo mod 10;
    sum:= tusyachi+sotni+desyatki+edinizi;
    proizv:=tusyachi*sotni*desyatki*edinizi;
    writeln (‘Сумма всех цифр числа=’, sum);
    writeln (‘Произведение всех цифр числа=’, proizv);
    end.

    1. Очень много ошибок Посмотри внимательно

  3. У Вас написано то же самое, только развернуто. Правильности в этом решении столько же, сколько и в нашем, рациональности — немного меньше

  4. На уровне «иногда заходим и читаем комментарии, отвечаем на них».
    Как-то так получилось, что желание писать что-то новое по паскалю внезапно отпало. Да и зачем это делать, когда вокруг столько еще интересного? Жизнь прекрасна — в ней есть и другие языки. Питон, си. И ассемблер! Я вот сейчас начинаю постигать ассемблер.
    А для начала того, что здесь есть, вполне достаточно. Как только освоено все это, правильным я считаю спрыгивать с паскаля на что-нибудь посерьезнее.

  5. Спасибо большое за сайт, но раздражают русские названия переменных. В программировании такого не должно быть!!!

  6. Помогите пожалуйста
    вводятся два натуральных числа. если оба числа чётные, то вывести большее из них. если оба числа не чётные, то вывести меньшее из них. если одно чётное, а другое не чётное, то вывести их произведение на экран.

  7. Вот как я решил:

    var chislo1, chislo2, proizvedenie: integer;

    begin

    readln (chislo1, chislo2);

    if (chislo1 mod 2 = 0) and (chislo2 mod 2 = 0) then

    if chislo1 > chislo2 then writeln (chislo1) else writeln (chislo2);

    if (chislo1 mod 2 0) and (chislo2 mod 2 0) then

    if chislo1 > chislo2 then writeln (chislo2) else writeln (chislo1);

    if (chislo1 mod 2 0) xor (chislo2 mod 2 0) then

    begin

    proizvedenie := chislo1 * chislo2;

    writeln (proizvedenie);

    end;

    end.

  8. program dv;

    var
    a, a1, a2, a3, summa, s: integer;

    begin
    readln(a);
    a1 := a div 100;
    a2 := a div 10 mod 10;
    a3 := a mod 10;
    writeln(a3,a2,a1);
    end.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *