Урок 9

Разбор заданий урока 8.


1. Ввести три числа. Выбрать и напечатать наибольшее из них.
Program prim_1;
Var a,b,c:real;
Begin
  Write('
введите три числа');
  Readln(a,b,c);
  If (a>b) and (a>c) then writeln (' max= ',a:0:2);
  If (b>a) and (b>c) then writeln (' max= ',b:0:2);
  If (c>a) and (c>b) then writeln (' max= ',c:0:2);
  Readln
End.

 


4. Известны площади круга и квадрата. Определить:
  a. Уместится ли круг в квадрате;
  b. Уместится ли квадрат в круге.

Program prim_4;
 
Var a,r,s1,s2: real;
Begin
  Write('введите площадь круга и квадрата');
  Readln(s1, s2);

  R:=sqrt(s1/3.14);          {радиус круга}
  A:=sqrt(s2);               {сторона квадрата}

  If (r<a/2) Then
    
writeln (' круг уместится в квадрате')
 
Else
   
writeln (' круг неуместится в квадрате');

  If (a*sqrt(2))>(4*r) Then
   
Writeln ('квадрат уместится в круге')
  Else
   
Writeln('квадрат неуместится в круге');

  Readln
End.

 


6. Дано трехзначное число. Выяснить, является ли оно палиндромом ("перевертышем"), т.е. таким числом, десятичная запись которого читается одинаково слева направо и справа налево.

Program prim_6;
  Var a,b,c: integer;

Begin
  Write('
введите трехзначное число');
  Readln(a);

  If (a div 100)=(a mod 10) Then
    Writeln ('
это палиндром ')
  Else
    Writeln('
это не палиндром');

  Readln
End.



 

Целочисленная арифметика и условный оператор.

Задача.

Дано трехзначное число. Определить:
  a) Является ли сумма его цифр двузначным числом;
  b) Является ли произведение его цифр трехзначным числом;
  c) Больше ли числа А произведение его цифр;
  d) Кратна ли пяти сумма его цифр;
  e) Кратна ли сумма его цифр числу А.

 Program prim9;
  Var a,x1,x2,x3: integer;
      x,s,p: longint;   
Begin
    Write('введите трехзначное число');
    Readln(a);

    X1:=x div 100;
    X2:=(x div 10) mod 10;
    X3:= x mod 10;
    S:=x1+x2+x3;

    If (s>9) and (s<100) Then
       writeln (' Сумма двузначное число ')    {a}
    Else
       Writeln('Сумма не двузначное число ');

    P:=x1*x2*x3;   

    If (p>99) and (p<1000) Then
       Writeln (' Произведение трехзначное число ')  {
b}
    Else
       Writeln('Произведение не трехзначное число ');

    Write('Введите число А');
    Readln(a);

    If (p<a) Then
      Writeln (' произведение больше ', a)    {
c}
    Else
      Writeln('произведение не больше ', a);

    If s mod 5 = 0 Then
      Writeln (' сумма цифр кратна 5')       {
d}
    Else
      Writeln('сумма цифр не кратна 5 ');

    If s mod а = 0 Then
      Writeln (' сумма цифр кратна ',a)      {
e}
    Else
      Writeln('сумма цифр не кратна ', a);

    Readln;
End.

 


Тренировочные упражнения.


1. Дано трехзначное число.
   a. Верно ли, что все его цифры одинаковы?
   b. Определить, есть ли среди его цифр одинаковые.

2. Дано четырехзначное число. Определить:
   a. Равна ли сумма двух первых его цифр сумме двух его последних цифр;
   b. Кратна ли трем сумма его цифр;
   c. Кратно ли четырем произведение его цифр;
   d. Кратно ли произведение его цифр числу А.

3. Дано натуральное число.
   a. Верно ли, что оно заканчивается нечетной цифрой?
   b. Верно ли, что оно заканчивается четной цифрой?

4. Является ли число А делителем числа В? А наоборот?

5. Дано четырехзначное число N. Выяснить:
   a. Является ли число палиндромом?
   b. Верно ли, что все 4 цифры этого числа различны.

6. Трамвайный билет имеет шестизначный номер. Выяснить, является ли билет "счастливым". Билет назовем "счастливым", если сумма первых трех цифр равна сумме последних трех цифр. Примечание. Так как шестизначное число больше 32767(тип Integer), необходимо номер билета определит как тип Longint( до 10 знаков).

7. Выяснить пройдет ли кирпич в круглое отверстие.

 

 

Разбор тренировочных заданий.
5. Дано четырехзначное число N. Выяснить:
   a. Является ли число палиндромом?
  

  Для решения этой задачи надо записать число в обратном порядке. Для этого единицы умножаем на 1000, прибавляем число десятков умноженное на 100, число тысяч умножаем на 10 и прибавляем число десятитысяч. Если полученное число будет равно исходному, значит это палиндром.

Program prim9_5а;
Var  x,y:integer;
Begin
  Write('введите четырехзначное число');
  Readln(х);
  y:=(x mod 10)*1000+((x div 10) mod 10)*100+((x div 100) mod 10)*10+x div 1000;
  If x=y then writeln ('число палиндром ')   
    Else Writeln('это не палиндром ');
  Readln;   
End.


6. Трамвайный билет имеет шестизначный номер. Выяснить, является ли билет "счастливым". Билет назовем "счастливым", если сумма первых трех цифр равна сумме последних трех цифр. Примечание. Так как шестизначное число больше 32767 (тип Integer), необходимо номер билета определит как тип Longint(до 10 знаков).

Program prim9_6;
Var  x1,x2:integer;
     x,:longint;   
Begin
  Write('введите номер билета');
  Readln(х);
  X1:=x div 100000+(x div 10000) mod 10+(x div 1000) mod 10; {сумма первых трех цифр}
  X2:=(x div 100) mod 10+(x div 10) mod 10+x mod 10; {сумма последних трех цифр}
  If x1=x2 then writeln (' билет счастливый ')
    Else Writeln('билет не счастливый ');
  Readln;   
End.


Hosted by uCoz