Умовні оператори. Розглянемо задачі.

Про матеріал

Цей матеріал стане в нагоді на уроках інформатики при вивченні мови програмування та при підготовці учнів до олімпіади з інформатики. Це наступний документ з низки "Вчимося розв'язувати задачі", який стане в нагоді вчителю та учням.

Перегляд файлу

Розглянемо задачі

Задача 1. Знайти найбільше число з трьох даних чисел.

  Ідея розв’язування:

Якщо перше число більше другого і  більше третього, то воно найбільше, інакше воно не найбільше, тому розглядаємо два наступних числа. Якщо друге більше третього, то друге найбільше, інакше найбільше - третє число.

Алгоритм  розв’язування:

  1. Ввести три числа А, B і С;
  2. якщо А>B и A>C    то найбільше А

                                        інакше  якщо В>C  то найбільше В

                                                                       інакше найбільше С.    

     

Програма:

Program Task1;

     var a,b,c,max: real;

begin

       write(‘ Введіть  числa A, B і C’);       readln(a,b,c);

       If (a>b) and (a>c) then max : =a

                                       else If b>c then max : = b

                                                          else max : = c;

       writeln(‘ найбільше з чисел - ‘, max);

end.

 

Задача 2. Розв’яжіть   лінійне рівняння  ах+в=0.

Ідея розв’язування:

     Лінійне рівняння має три можливих варіанта розв’язування :

    1 ) якщо коефіцієнт a не дорівнює  нулю, то рівняння має один  розв’язок ;

  1. якщо a=0 і b=0 , то рівняння має безліч  розв’язків;
  1. якщо тільки а=0, то рівняння розв’язків не має.

 

Алгоритм розв’язування:

  1. ввести значення a,b;
  2. якщо а=0 і  b=0

                  то вивести(«безліч розв’язків»)

                   інакше якщо а=0

                                  то вивести («розв’язків нема»)

                                  інакше вивести («рівняння має один  розв’язок», -b/a);      

                                       

Програма розв’язування:

Program Task2;

   var a, b : real;

begin  writeln(‘ax+b=0’);

      write(‘ Введіть значення а і b’);      readln(a,b);

      If a<>0 then writeln(‘ рівняння має один розв’язок x=’,-b/a:0:2)

                    else If b=0 then writeln(’ рівняння має безліч розв’язків’) 

                                      else writeln(‘ рівняння не має розв’язку’);

end. 

 

Задача 3

Обчислити

Алгоритм розв’язування

  1. ввести(х)
  2. якщо х< -5

         то y:=x2+4

         інакше якщо  x<0

                       то y:=abs(x)

                       інакше якщо x<4

                                       то y:=1+

                                       інакше   y:=x-1

  1. вивести(у)  

 

Програма розв’язування

Program Task3;

   var x, y : real;

begin   write(‘ Введіть значення x’);    readln(x);

      If x<-5 then y:=x2+4

                  else If x<0 then y:=abs(x) 

                                   else If x<4 then y:=1+

                                                    else y:=x-1;

writeln(‘y=’, y:0:4);

end. 

 

Задача 4.

Дано натуральне число до 100, яке визначає вік людини (в роках). Додати до цього числа найменування "рік", " роки " або " років ", наприклад 1 рік, 42 роки, 26 років.

Проаналізуємо в яких випадках  ми додаємо ці слова:

  • якщо це числа 11, 12, 13, 14 то - "років"
  • якщо 1, 21,31, тобто остання 1, то - "рік"
  • якщо 2,3,4,22,23,24,32,33,34..., тобто останні цифри 2..4, то - "роки"
  • якщо 10,20...,5,6,7,8,9,15,16,17,18,19,25...29. тобто останні цифри 0, 5...9, то - "років"

Програма розв’язування:

Var n: 1..100;

Begin

  Write(' Введіть вік людини ');   Readln(n);

  If (n>10) and (n<15) then writeln(n,' років')

                                  Else

                                  Case n mod 10 of

                                             1: writeln(n, ' рік');

                                       2 . .4: writeln(n, ' роки');

                                  0, 5 . . 9 : writeln(n, ' років');

                                   end;

end.

      Задача 5. Обчислити

                            де y=a+x+sin2a,  x=cos(a/b)-sin(b/a).

Ідея розв’язування:

Що б обчислити Z необхідно не тільки  знати значення a, b, c і d, а й  обчислити попередньо y.   Змінна у залежить від значень а і х, змінну х також потрібно попередньо обчислити, запросив значення a і b, враховуючи що вони не дорівнюють 0.

Алгоритм розв’язування:

  1. Ввести значення a, b, c, d;
  2. перевірити a, b ( вони не повинні дорівнювати 0);
  3. Обчислити Х;
  4. Обчислити У;
  5. якщо y< 10

               то  z:=a2(d-c)

               інакше якщо   y= 10

                                то  z:= y+11ac

                                інакше   z:= y2(a/b-2c)

 6) вивести Z

Програма

Program task1;

   var a, b, c, y, z : real;

begin 

    write(‘Ввести значення a, b’);     readln(a,b);

    If (a=0) or (b=0) then

                                 begin writeln(‘ введені значення рівні 0’);

                                     Halt;{ переривається виконання  програми}

                                 end;

    write(‘Ввести значення d, c’);    readln(d,c);

    x:=cos(a/b)-sin(b/a);

    y:=a+x+sqr(sin(a));

    If y< 10 then  z:=sqr(a)*(d-c)

                else If   y= 10  then  z:= y+11*a*c

                                         else   z:= sqr(y)*(a/b-2*c);

    writeln(z);

end.

Задача 6.

2. Обчислити  y= - Xmax, де x1=(1-а)2*(2+аc)3,  x2=cos|x1|+a2,

                     x3=  

Идея розв’язування:

Для обчислення y необхідно знати найбільше із значень Х1, Х2 і Х3. Значення Х1 залежить від а і с, які потрібно ввести з клавіатури. Значення  Х2 обчислюється після знаходження Х1 , а Х3 залежить від взаємовідношень Х1 і Х2  , враховуючи, що Х2 не дорівнює 0 і а>0.

   Алгоритм розв’язування:

  1. ввести а, с;
  2. перевірити значення а;
  3. Обчислити Х1;
  4. Обчислити Х2;
  5. якщо Х12  і Х2 не 0

           то Х3:=сos(Х1/ Х2)

           інакше якщо Х12     то Х3:=3с+а

                            інакше Х3:=а;

  

  1. якщо Х12  и Х13

                   то  Xmax:= Х1

                            інакше якщо Х23   то  Xmax := Х2

                                     інакше Xmax:= Х3

  1. Обчислити у;
  1. вивести у.

Програма розв’язування:

Program task2;

   var a, b, x1, x2, x3, max, y : real;

begin 

    write(‘Ввести значення a, b’);    readln(a,b);

    If a<0 then   begin writeln(‘ введене значення від’ємне’);

                                Halt;{ переривається виконання  програми}

                           end;

    x1: = sqr(1-а)*(2+а*c)*sqr(2+a*c);     x2: =cos(abs(x1))+a*a;

      If  (x1>x2) and (x2<>0)  then  x3 : =cos(x1/x2)

                else If   x1= x2  then  x3 : = 3*c+a

                                         else   x3 : = a*sqrt(a);

    If  (x1>x2) and (x1>x3)  then  max : =x1

                else If   x2> x3  then  max : = x2

                                         else   max : = x3;

    y := - max;    writeln(y=’, y:0:2);

readln;

end.

 

Середня оцінка розробки
Структурованість
4.9
Оригінальність викладу
4.9
Відповідність темі
5.0
Загальна:
4.9
Всього відгуків: 11
Оцінки та відгуки
  1. Скляренко Людмила Дмитрівна
    Загальна:
    4.7
    Структурованість
    4.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
  2. Овсянникова Катерина Віталіївна
    Загальна:
    5.0
    Структурованість
    5.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
  3. Губа Людмила
    Загальна:
    5.0
    Структурованість
    5.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
  4. Додорошко Сергій Анатолійович
    Загальна:
    5.0
    Структурованість
    5.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
  5. Sharovarova Viktoria
    Загальна:
    5.0
    Структурованість
    5.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
  6.  Shapoval
    Загальна:
    5.0
    Структурованість
    5.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
  7. Василець Наталя Василівна
    Загальна:
    5.0
    Структурованість
    5.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
  8. Шпітко Вікторія Володимирівна
    Загальна:
    5.0
    Структурованість
    5.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
  9. Запорожец Ольга
    Загальна:
    5.0
    Структурованість
    5.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
  10. Бондарчук Тетяна Вікторівна
    Загальна:
    5.0
    Структурованість
    5.0
    Оригінальність викладу
    5.0
    Відповідність темі
    5.0
  11. Bondareva Raisa
    Загальна:
    4.7
    Структурованість
    5.0
    Оригінальність викладу
    4.0
    Відповідність темі
    5.0
Показати ще 8 відгуків
docx
Додано
12 лютого 2018
Переглядів
2648
Оцінка розробки
4.9 (11 відгуків)
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

Додати розробку