Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Уроки программирования на Turbo Pascal


Информационный Канал Subscribe.Ru


Уроки программирования на Turbo Pascal #9

Подписчиков на 2002-08-14 - 677 человек(а).

Рассылка проекта "Олимпиада.com.ru".


Главная Архив задач Конкурс Обучение Рассылки Форум Контакты

Здравствуйте, уважаемые подписчики!


  Мало знать оператор, надо уметь его использовать. Сегодня мы займемся разбором типичных задач на условный оператор.


Урок 9


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

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

Код программы.
Program prim;
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. Выяснить пройдет ли кирпич в круглое отверстие.

Разбор заданий урока 8.
1. Установить, истинны или ложны следующие условия: (A=0) and not (B=0) or not (a=0) and (B=0) при
   a. При А=0, В=0 выражение ложно.
Выполним действия по порядку:
1) B=0 истина
2) Not(истина) =ложь
3) (А=0) истина
4) истина and ложь =ложь
5) not(a=0) =ложь
6) ложь and истина = ложь
7) ложь or ложь = ложь
   b. При А=0, В=1 выражение истинно

2. Ввести три числа. Выбрать и напечатать наибольшее из них.
Program prim_2;
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.


8.Известны площади круга и квадрата. Определить:
  a. Уместится ли круг в квадрате;
  b. Уместится ли квадрат в круге.
Program prim_8;
Var a,r,s1,s2:real;
Begin
    Write('введите площадь круга и квадрата');
    Readln(s1, s2);
    A:=sqrt(s2);
    R:=sqrt(s/3.14);
    If (r<a/2) then writeln (' круг уместится в квадрате')
        Else writeln (' круг неуместится в квадрате');
If (a*sqrt(2))>(4*r) then writeln ('квадрат уместится в круге')
Else Writeln('квадрат неуместится в круге');
Readln
End.


9. Дано трехзначное число. Выяснить, является ли оно палиндромом ("перевертышем"), т.е. таким числом, десятичная запись которого читается одинаково слева направо и справа налево.
Program prim_9;
Var a,b,c:integer;
Begin
    Write('введите трехзначное число');
    Readln(a);
    If (a div 100)=(a mod 10) then writeln (' это палиндром ')
      Else Writeln(' это не палиндром');
    Readln
End.


Желаю успехов!
Ганилова Татьяна Евгеньевна school6@rikt.ru


Реклама в рассылке:

RLE    

  


Подпишитесь на наши рассылки:

Новости проекта "Олимпиада.com.ru" [Алексей Шамис]
Новости проекта "Olimpiada.com.ru". Новые темы на форуме. Информация о пополнениях в архиве задач. Оперативно и своевременно!

Уроки программирования на Turbo Pascal [Татьяна Ганилова]
Хотите стать Великим Программистом? Начните свой путь к вершине славы с изучения языка Turbo Pascal. Он как нельзя лучше подходит для начинающих программистов и в то же время используется для разработки сложных "профессиональных" программ.

Олимпиадные задачи с решениями на Turbo Pascal [Алексей Шамис]
В рассылке публикуются решения интересных олимпиадных задач различного уровня. Содержит много теоретической информации. Периодичность - 2-3 раза в неделю.

Задача в неделю. Олимпиадные задачи по информатике [Александр Алексеев]
Каждый понедельник в рассылке публикуется задача, которую необходимо решить и в следующий понедельник прислать программу на тестирование. Решения проверяются, и в пятницу публикуется разбор и итоги тестирования.



Всегда рады видеть Вас на нашем сайте. Жду ваших предложений и замечаний, Алексей Шамис

Copyright © 2002 by Tatyana Ganilova.



http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное