Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Then writeln('Город залишився іншої форми')



Else

If ((A=C)and(B/2=C))or((B=C)and(A/2=C))

Then writeln('У бабусі квадратний город.')

else writeln('У бабусі прямокутний город.');

end;

End; Readkey;

End.

Приклад № 12

Трьом Товстунам подали на десерт кремові тістечка. Маса одного тістечка — Х кг, а маса Товстунів відповідно X1 кг, Х2 кг та Х3 кг. Перший Товстун з'їв N тістечок. Кожний наступний Товстун з'їдав у два рази більше від попереднього, але при цьому він не міг з'їсти більше половини своєї власної ваги. Скільки тістечок було з'їдено Товстунами за обідом?

Другий та третій Товстуни за умовою можуть з'їсти тістечок у два рази більше, ніж попередній Товстун, але не можуть з'їсти більше половини своєї ваги. Тому фактично в задачі необхідно перевірити, чи не перевищує кількість тістечок, що може з'їсти кожний Товстун, дозволену масу, і у відповідності до цього підрахувати кількість тістечок, що були з'їдені.

Наприклад, якщо другий Товстун може з'їсти 2 N тістечок, то вага цієї їжі буде 2 N Хкг. Але за умовою він не може з'їсти більше половини своєї ваги, тобто більше ніж X1 /2 кг. Тому якщо вага тих тістечок, що Товстун може з'їсти, не перевищує поріг X1 /2 кг, то ми до загальної кількості тістечок додаємо всі можливі, тобто 2 N, якщо ж перевищує, то ми додаємо тільки ту кількість тістечок, що не дозволяє перевищити припустимий поріг, тобто X1 /2 /X (дозволена вага їжі поділена на вагу одного "тістечка). Якщо в цьому випадку число вийде нецілим, то це означає, що Товстун з'їв тістечко не повністю. Щоб такого не трапилось, ми робимо відкидання дробової частини після ділення за допомогою функції trunc.

Програма, що реалізує цей алгоритм, має наступний вигляд:

Program Example_12;

Uses crt;

Var X,X1,X2,X3:real;

N,Counter : integer; {N - кількість тістечок, що з'їв перший Товстун; Counter - загальна кількість з'їдених тістечок}

Begin

Clrscr;

Write('Введіть вагу тістечка: ');

Readln(X);

Write('Введіть вагу Товстунів (1-го, 2-го та 3-го): ');

Readln(X1, Х2, ХЗ);

Write('Введіть кількість тістечок, що з'їв перший Товстун ') ;

Readln(N);

If (X<=0)or(X1<=0)or(X2<=0)or(X3<=0)or(N<=0)

Then writeln('Помилкові вхідні дані')

Else

Begin

Counter:=N; {3'їв перший Товстун}

If N*2*X<=X2/2 Then Counter:=Counter+2*N

Else Counter:= Counter+ trunc(X2/2/X);

If N*4*X<=X3/2 Then Counter:=Counter+4*N

Else Counter:= Counter+ trunc(X3/2/X);

Writeln('Кількість з'їдених тістечок: ', Counters

End;

Readkey;

End.

Приклад № 13

Дано натуральне число N (N>= 1000). Визначити суму першої і останньої цифр даного числа.

Для розв'язання цієї задачі ми скористаємося стандартними операціями цілочисельного ділення та остачі від ділення цілих чисел (операції divта mod).Нагадаємо, що результатом ділення числа націло на 10 буде ефект відкидання «молодшої» цифри числа (відповідно при діленні на числа 100, 1000, 10000 тощо будемо «відкидати» дві, три або чотири цифри числа). Результатом ж операції знаходження залишку від ділення на 10 буде остання цифра числа (відповідно при знаходженні залишку від ділення на 100, 1000, 10000 будемо отримувати дві останні, три останні, чотири останні цифри числа).

Наприклад:

234 div 10 = 23

9213 div 100 = 92

52 mod 10 = 2

2845 mod 1000 = 845.

Виходячи з усього сказаного, програма буде мати вигляд:

Program Example_13;

Uses crt;

Var N, First, Last : word;

{First - перша цифра числа; Last - остання цифра числа}

Begin

Clrscr;

Write('Введіть число: ');

Readln(N); Last := N mod 10;

If (N>=0) and (N<10) then First:=0;

If (N>=10) and (N<100) then First:=N div 10;

If (N>=100) and (N<1000) then First:=N div 100;

If (N=1000) then First:=l;

Writeln('Сума першої та останньої цифр дорівнює', First+Last);

Readkey;

End.

Приклад № 14

Квадратний багаточлен заданий коефіцієнтами а, b, с,де а ≠ 0. Визначити, чи корені відповідного рівняння є парними числами.

Для розв'язання цієї задачі необхідно нагадати дітям алгоритм знаходження коренів квадратного рівняння:

1) обчислити дискримінант;

2) якщо ми отримали від'ємне число, то коренів для розв'язку квадратного рівняння з даними коефіцієнтами а, b, с не існує;

3) якщо дискримінант невід'ємний, то корені рівняння знаходяться. Парність коренів можна визначити, використовуючи операцію знаходження залишку від цілочисельного ділення на 2 (парне число при цьому у залишку має 0, а непарне — 1). Зверніть увагу на те, що парність або непарність можна визначити тільки для цілих чисел.

Program Example_14;

Uses crt;

Var a,b,c,D,Xl,X2:real;

{a,b,c - коефіцієнти квадратного рівняння; D - дискримінант; XI, X2 - корені квадратного рівняння}

Begin

Clrscr;

Write ( 'Введіть коефіцієнти квадратного рівняння а,b,с: ') ;

Readln(a,b,c);

If a=0

Then writeIn(лПомилка вхідних даних')

Else

Begin

D:=sqr(b)-4*a*c;

If D<0

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.