четверг, 20 ноября 2014 г.

Дано масив з 10 елеменов. Перші 4 впорядкувати по зростанню, останні 4 по спадаючій.

Алгоритм вирішення задачі:
В даному випадку використовується сортування методом бульбашки.

Виникають складності при сортування останніх чотирьох елементів масиву. Кількість проходів (i) і кількість порівнянь (j) такі ж як в першому випадку. Однак номера елементів стоять далі від початку на 6 значень. Тому простіше при обм
іні додавати до j 6.


































В однорідному масиві, шо складєьться з N  елементів, знайти максимальний по модулю елемент масиву.



вторник, 7 октября 2014 г.

Задача

Дано три дійсних числа. Вибрати з них ті, які належать інтервалу (1,3)


Задача

Використовуючи одну й ту ж форму для введення і виведення даних, по введених користувачем x, y, r знайти, чи лежить точка P (x, y) в окружності радіуса r з центром на початку координат (включаючи саму окружність) або за колом.

Створення програми вимагає знання функцій і команд delphi:

     s: ShortString мінлива s матиме тип ShortString (короткий рядок)
     StrToFloat перетворює змінну типу рядок (що містить число) в змінну типу Float
     FloatToStr перетворює змінну типу Float в змінну типу рядок
     sqrt витягує квадратний корінь
     sqr зведення в квадрат
     if перевірка умови - then виконується, якщо умова істина else - виконується в протилежному випадку




 Користувач вводить одномірний масив до 20 елементів. Потрібно знайти суму елементів, які стоять на непарних місцях.

VAR починає розділ оголошення змінних

i, N, K: integer; змінні i, N, K матимуть тип integer

Writeln виводить на дисплей в новий рядок свої аргументи

Readln зчитує введені користувачем дані з клавіатури і вносить отримане значення в змінну

For i: = 1 to N do виконується цикл, в якому змінна i приймає значення від 1 до N

Round функція округлення аргументу

X: array [1..20] of real масив X буде мати елементи з номерами від 1 до 20 включно, тип кожного елемента real

BEGIN початок виконання програми

END. кінець виконання програми



 

понедельник, 29 сентября 2014 г.

Тітанік

в розділі var пишемо координати малюнка

var
  Form1: TForm1;
  x,y: integer; 

створюємо і пишемо процедуру  з парамерами  Titanik





четверг, 15 мая 2014 г.

Задача

Згенерувати випадкові ціле число , дійсне число , букву в діапазонах , які вводить користувач .Опис змінних:

    
min_i , max_i - мінімальна і максимальна межі діапазону для цілого числа;
    
n_i - випадкове ціле число;
    
min_f , max_f - мінімальна і максимальна межі діапазону для дійсного числа ;
    
n_f - випадкове дійсне число ;
    
first_c , last_c - перший і останній символ діапазону , в якому повинен бути згенерований випадковий символ ;
    
min_c , max_c - коди - числа , що відповідають зазначеним символам ;
    
n_c - випадкове число , яке буде переведено в символ по таблиці ASCII.

понедельник, 21 апреля 2014 г.

Підпрограми



1)      Підпрограми - процедури.
У мові Паскаль розрізняють два види підпрограм: Підпрограми-процедури і підпрограми-функції.
Концепція структурного програмування поллягає в тому, що будь-яку складну чи громіздку задачу потрібно звести до послідовності простіших підзадач, записати підпрограми для їхнього розв’язування і створити головну програму, яка має складатися з викликів  цих процедур. Різновидом підпрограми  є процедура, де розв’язується допоміжна задача.
Procedure <Назва процедури>;
<Розділи описів і оголошень процедури>
{Оголошенні тут змінні називаються локальними}
begin
<Розділ команд процедур>
end;
Назву процедурі дає користувач. Процедур може бути декілька. Їх записують у розділі описів головної програми:

Program <Назва головної програми>;
<Розділ описів і оголошень>;
{Оголошені тут змінні називаються глобальними }
<Процедура 1>;
<Процедура 2>;
.............
begin
< Розділ команд, який містить
виклик процедури 1;
виклик процедури 2;>
.....
end.
Розділ команд головної програми складається в основному з викликів процедур. Виклик процедури – це команда, яка збігається з назвою процедури.
2) Демонстраційний приклад.

Дано сторони a, b прямокутника. Обчислити його  периметр і площу, використавши для цього процедуру.



среда, 16 апреля 2014 г.

Кнопка, що пригає

Мета роботи - створити програму-гру, виконує такі дії:

1. Після запуску програми у вікні зображується безладно стрибаюча кнопка.

2. Необхідно встигнути клацнути по ній.

3. Кнопка перестрибує з одного місця в інше за сигналом, отриманому від таймера.

4. Для виходу з програми необхідно натиснути мишею на закриває кнопці в рядку заголовка.

Опис плану розробки програми

1. Відкрити новий проект.

2. Розмістити на формі екземпляри компонентів: командна кнопка Button, таймер Timer.




 Таймер. Цей компонент служить для відліку інтервалів реального часу. Має обмеження - не може обробляти інтервали менше 55 мілісекунд.

понедельник, 14 апреля 2014 г.

Завдання: Звертати і розгортати вікно програми через встановлений інтервал

Application.Minimize - функція мінімізує ( згортає вікно )

     
Application.ReStore - функція відновлює форму в попереднє положення.
Яких-небудь додаткових властивостей дані функції не мають. Просто записуємо у процедурі потрібну функцію , ставимо крапку з комою і компілюємо .
 Нам потрібно написати програму, яка б по тому встановлений проміжок часу згорталася і розгорталася .Використовуємо для даної задачі TTimer  і введемо додаткову змінну max типу boolean ( запишемо в private ) , як ознака розгорнутого вікна . Запускати наше вікно ми будемо по кнопці btnStart , а записувати затримку для таймера ставити в EditMs , припускаючи , що одиниця вимірювання мілісекунди .



среда, 9 апреля 2014 г.

Цикл "Доки". Команди While




1)      Цикл "Доки". Команди While

While
            умова do
begin
Тіло циклу
end;

Вказівка виконується таким чином: перевіряється виконання умови, записаної після слова WHILE (поки), і якщо ця умова виконується то виконується серія операторів (тіло циклу), після чого знову повертається до перевірки виконання вказаної умови (зустрівши слово END). Вказані дії виконуються доти, поки умова, яка перевіряється дає істино. Якщо умова не виконується (результат виконання умови є хибно), то тіло циклу пропускається і виконання вказівки повторення закінчується.
Приклад. Вивести таблицю чисел від 20 до 30, їхні квадрати та куби за допомогою команди while можна так:



вторник, 1 апреля 2014 г.

Скласти програму для визначення чи лежить точка (x3; у3), на прямий проходить через точки (x1, y1), С (х2; у2)}


 Знайти суму 30 дійсних чисел.




Скласти програму, яка кодувала б текст, переданий російськими літерами, за допомогою азбуки Морзе. Між сусідніми символами азбуки Морзе треба залишати по одному пробілу, а між сусідніми словами - додатково стільки прогалин, скільки їх було в переданому тексті.


понедельник, 24 марта 2014 г.

Події

OnСlick
При клацанні кнопкою миші
OnDblClick
При подвійному натисканні кнопкою миші
OnMouseDown
При натисканні кнопки миші
OnMouseUp
При відпуску кнопки миші
OnMouseMove
При переміщенні миші
OnKeyPress
При натисканні клавіші клавіатури
OnKeyDown
При натисканні клавіші клавіатури. Події   OnKeyDown   і   OnKeyPress   - Це чергуються, повторюються події, які відбуваються до тих пір, поки не буде відпущена утримувана клавіша (у цей момент відбувається подія OnKeyUp)
OnKeyUp
При відпуску натиснутої клавіші клавіатури
OnCreate
При створенні об'єкта (форми, елемента управління). Процедура обробки цієї події зазвичай використовується для ініціалізації змінних, виконання підготовчих дій
OnPaint
При появі вікна на екрані на початку роботи програми, після появи частині вікна, яка, наприклад, була закрита іншим вікном і в інших випадках
OnEnter
При отриманні елементом управління фокусу
OnExit
При втраті елементом управління фокусу


 procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
      Canvas.TextOut(X, Y, 'X='+IntToStr(X)+' Y='+IntToStr(Y));
end;

 procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
     MessageDlg(Chr(Key), mtInformation, [mbOk], 0);
end;