субота, 18 жовтня 2014 р.

Шкільна олімпіада з інформатики 8-11 класи

Шкільна олімпіада з інформатики 8-11 класи
Інструкція для учасника олімпіади.
1)    На Робочому Столі створити папку з назвою «...клас.ПІБ».
2)    Вихідні коди виконаних програм  зберегти у папці «..класПІБ» під назвами: ZADACHA1.pas,   ZADACHA2.pas, ZADACHA3.pas...

ZADACH1. Микола зі шкільного парламенту отримав завдання обчислити площі класних кімнат. Для цього він пройшовся по кабінетах і виміряв їх довжину та ширину. Напишіть програму, яка допоможе Миколі обчислювати площі кімнат.
Технічні умови: З клавіатури вводиться два числа a та b – довжина та ширина кабінету, на екран виводиться одне число – площа класної кімнати
в кв. од.
Приклади
Введення
Виведення
1
1кв.од.
0
0кв.од.
6
8
48кв.од.

program Zadacha1;
var a,b,s:integer;
begin
writeln('Ввести ширину кімнати  а =');
readln(a);
writeln('Ввести довжину кімнати b =');
readln(b);
S:=a*b;
writeln('Площа S =',s,'кв.од.');
end.

ZADACH2. Написати програму, яка знаходить суму А+В, модуль різниці |А-В|, та добуток двох виразів А і В, де А = (g-2,5)2 ; В = q2-4,9.
Технічні умови: З клавіатури вводиться два числа g та q – дійсні числа для обчислення виразів А  та В.
На екран виводяться три значення виразів А+В,  |А-В|, А*В.
приклади
Введення
Виведення
1

0

6
8



program Z2;
var g,q,a,b:real;
begin
writeln('Введіть дійсне число g= ');
readln(g);
writeln('Введіть дійсне число q= ');
readln(q);
A:=(g-2.5)*(g-2.5);
B:=q*q-4.9;
writeln('Результати: A+B= ',A+B:10:4,';   |A-B|= ', abs(A-B):10:4,';   A*B= ', A*B:10:4);
end.

ZADACH3. Написати програму, яка розташовує суму А+В і модуль різниці двох виразів А та В у порядку зростання.
Технічні умови: З клавіатури вводиться два цілі числа  А  та B.
На екран виводяться два значення виразів А+В,  |А-В| в порядку зростання.
приклади
Введення
Виведення
1
0
2
0
1
1
-6
8
2
14

program zadacha3;
var a,b,c,v:integer;
begin
writeln('Введіть  ціле число  a =');
readln(a);
writeln(''Введіть  ціле число  b=');
readln(b);
v:=abs(a-b);
c:=a+b;
if  c>v  then
writeln(v,'   ',c);
if  v>c  then
writeln(c,'   ',v);
if  v=c  then
writeln(c,'   ',v);
end. 

ZADACH4. Петрик купив декілька конвертів для того, щоб зробити грошовий подарунок своїм друзям. У перший конверт він поклав k гривен. У другий конверт він поклав 2к гривен. У третій конверт він поклав Зк гривен і так далі. Допоможіть Петрику обчислити суму усіх грошей у конвертах.
Написати програму, яка знаходить суму усіх натуральних чисел, що менші даного натурального числа і які кратні деякому натуральному числу.
Вхідні дані: 1) n - натуральне число в діапазоні від 1 до 10000; 2) k - натуральне число, кількість грошей, які лежать у першому  конверті.
Вихідні дані: С - натуральне число, є сумою грошей, які знаходяться в усіх конвертах Петрика.

program zadacha3;
var n,c,g,k:integer;
begin
writeln(‘Задайте довільне  натуральне число  n<10000; n=');
readln(n);
writeln('Задайте число грошей в першому  конверті  k<10000;  k=');
readln(k);
c:=0;
g:=0-k;
while g<n do
begin
g:=g+k;
c:=c+g;
end;
writeln(c=',c);
end.


ZADACH5.  Дано ряд послідовних натуральних чисел від n до m, з якого видаляють спочатку всі числа, що стоять на непарних місцях, тоді з ряду, що залишився, видаляють всі числа, що стоять на непарних місцях, і так чинять, поки не залишиться одне єдине число. Напишіть програму, що знайде це число.
Технічні  умови. Програма  читає з клавіатури числа n і m через пропуск  (n<m<1000000). Програма виводить на екран єдине шукане число. 
приклад
Введення    Виведення

1  6                 4

середа, 15 жовтня 2014 р.

Програмування лінійних алгоритмів на Pascal

Практична робота.
Програмування лінійних алгоритмів на Pascal

Записати програму мовою Pascal та протестувати її на правильність.

Завдання 1. Дано сторони прямокутника а і b. Знайти його площу S = a•b і периметр
P = 2( а + b), якщо а і b, S, P – дійсні числа.

Завдання 2. Даний діаметр кола dдійсне число. Знайти її довжину L = π•d. Як значення π використовувати 3.14.  Вивести відповідь L, як дійсне число.

Завдання 3. Дано довжину ребра куба а - дійсне. Знайти об'єм куба V = a3 і площу його поверхні S = 6•a2. Вивести відповіді V, S як дійсні числа.

Завдання 4. Дано довжини ребер а, b, з прямокутного паралелепіпеда. Знайти його об'єм V = abc і площу поверхні S = 2•(ab + bc + ac). Вивести відповіді V, S як дійсні числа.

Завдання 5. Знайти довжину кола L і площу круга S заданого радіусу R:
L = 2•π•R,    S = π•R2. Як значення π використовувати 3.14. Вивести відповіді L, S як дійсні числа.

Завдання 6. Дано два цілі  числа а і b. Знайти: 1) їх середнє арифметичне:
C=+ b)/2, де С - дійсне число; 2) остачу від ділення а на  b; {використати M:=а mod b}; 3) цілу частину від ділення а на  b; {використати N:=а div b}; 


Завдання 7. Дано два додатні числа а і b. Знайти: 1)їх середнє геометричне, тобто квадратний корінь з їх множення: (a*b)0,5 =, {використати g := sqrt(a*b)}.

Завдання 8. Дані катети прямокутного трикутника aіb. Знайти гіпотенузу
 c ==(0,5a2 +0,5b2)0,5 і периметр P: P = а + b + с. {використати c:= sqrt(a*a +b*b)}.

Завдання 9. Дано два круги із спільним центром і радіусами R1 і R2 (R1 > R2). Знайти площі цих кругів S1 і S2, а також площу S3 кільця, більший радіус якого рівний R1, а менший  радіус рівний R2:     S1 = π•(R1)2              S2 = π•(R2)2              S3 = S1- S2.
Як значення π використовувати 3.14.

Завдання 10. Дано довжину L кола. Знайти його радіус R, та площу S круга, враховуючи, що довжина L = 2•π•R, звідки  R= L/(2•π),   а площа круга S = π•R2.
Як значення π використовувати 3.14.

Завдання 11. Дано два дійсні числа a, b, де 0<b<a.  Знайти найбільше  та найменше із чисел:  s1= 2(a*b)/(a+b) – це середнє гармонійне ; s2= (a*b)0,5- це середнє геометричне;  s3= + b)/2 – це середнє арифметичне; s4=(0,5a2 +0,5b2)0,5 - це середнє квадратичне.     

Завдання 12. Дано сторони трикутника – це три дійсні числа a, b, с, де 0<с=<b=<a.  Знайти:
1) можливість існування трикутника з даними сторонами, а саме перевірити одночасне виконання трьох умов:  a-b<c<a+b;   a-c<b<a+c; b-c<a<b+c;
2) вид трикутника за сторонами, тобто, рівносторонній(a=b=c), рівнобедрений(a=b or c=b or c=a), різносторонній (0<с<b<a).
3) вид трикутника за кутами тобто,  прямокутний(якщо a2+b2=c2), тупокутний( якщо a2+b2<c2), гострокутний( якщо a2+b2>c2).