Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Programming / Lectures / slides / lec_2_1.ppt
Скачиваний:
24
Добавлен:
19.04.2015
Размер:
580.61 Кб
Скачать

Вирази та операції

Вираз – послідовність операндів, об’єднаних знаками операцій та

круглими дужками. Операнди – об’єкти, над якими виконуються операції; операції – задають дії над операндами.

Приклад:

0.5*(z+w)>=(z-u)/(w-u) kor=sin(x)-2*exp(x-0.7)

Класифікація операцій: 1) за кількістю операндів

– Унарні (-A)

– Бінарні (A+B)

– Тринарні ((A)?B:C)

2)за видом дій

арифметичні

операції присвоювання;

операції відношення;

логічні;

порозрядні( побітові), інші.

3)за пріоритетом поділяють на 16 рівнів. Найвищий мають операції звертання до функції, до елементу масиву, структури; потім – інкремент та декремент,…., арифметичні, .., відношення,.., кома

Порядок виконання – за приоритетом та залежно від асоціативності. Порядок можно змінювати за допомогою круглих дужок.

Приклад: x<=5.7*(x-y)/(cos(y)-sin(x))

Арифметичні операції

Операції присвоювання

Унарні операції присвоювання ++ інкремент (збільшує значення на 1)

-- декремент ( зменшує на 1)

 

++ К (префіксна форма)

К++ (постфіксна форма)

Приклад: sum+=n (sum=sum+n); k+=1 (k++ або k=k+1)

В мові Сі допускаються присвоювання виду : a=(b=c=1)+1;

Приклад:

int data1, data2, data3; data1=data2=data3=68;

Бінарні операції присвоювання

Операції порівняння

В мові Сі немає логічного типу (булевого), тому результатом умовного виразу є цілочисельне арифметичне значення. "Істинно" - це ненульова величина, а "хибно" - це нуль.

Приклади:

#include<stdio.h>

x<xmin == y<=ymax

Void main()

( приоритет == нижчий. Результат

{

буде істиним, коли обидві операції

int tr, fal;

порівняння одночасно будуть

tr=(111<=115); /* вираз істинний */

істиними або хибними)

fal=(111>115); /* вираз хибний */

 

printf("true - %d false - %d \n",tr,fal);

 

}

Логічні операції

Стандартні математичні функції

Підключення бібліотеки директивою препроцесора

# include <math.h>

Всі функції мають тип double. Аргумент теж типу double. Приклад

Y=sin(0.5*x)+sqrt(0.3e-2)*pow(2.0,x-1);

Можливо створювати макроси з параметрами (не плутати з функціями!), що оброблюються препроцесором.

Приклад

#define ABS(x) ((x)<0 ? -(x) :(x)) /* абсолютне значення*/

Основні математичні функції

Етапи розв'язання задач на комп'ютері

Постановка задачі мовою чітко визначених математичних понять. Суть поставленої задачі, необхідні початкові дані та інформацію, що вважається результатами розв'язання.

Побудова математичної моделі. Створюється інформаційна математична модель об'єкта, і чим достовірніше вона відображає реальні сторони об'єкта, тим точніші одержані результати.

Розробка алгоритму, тобто послідовності вказівок для розв'язання задачі, відбувається на основі побудованої математичної моделі. При створенні складних алгоритмів застосовується метод покрокової розробки, сутність якого полягає в тому, що алгоритм розробляється «зверху донизу»: необхідно розбити алгоритм на окремі частини, кожна з яких розв‘язує свою самостійну підзадачу, і об'єднати ці підзадачі в єдине ціле.

Складання програми. Алгоритм має бути записаний мовою програмування. Може здійснюватися теж за принципом «зверху донизу», що дозволяє одержати добре структуровану програму, читання і розуміння якої значно полегшене.

Компіляція програми. Компонування програми.

Налагодження програми. Полягає в підготовці системи тестів, які містять набір вихідних даних, що мають відомий результат.

Експлуатація програми. Програма, що має відповідну документацію, може бути тиражована і запропонована іншим користувачам.

Соседние файлы в папке slides