Типи даних

1) Класифікація типів. Модифікатори

2) Оголошення типів

3) Приведення типів

 

Класифікація типів

 

Типи даних можна класифікувати двома різними способами.

 

Перший спосіб:

Всі типи даних можна розділити на 4 групи:

1) «порожній тип » - void

2) скалярний тип – арифметичні типи (int float doble char), перелічення, указники, посілання

3) тип «функція»

4) агреговані типи: масиви, структури, об¢єднання, класи.

Другий спосіб:

 

Інший спосіб класифікації типів, це розбиття їх на основні і похідні

До основних типів відносяться void char int float doube і їх варіанти з модифікаторами shozt (короткий), lonq(довгий) siqned (із знаком ), uusiqned(без знака) Модифікатор siqned мається на увазі за умовчанням і тому не указується. Таким чином, можливі наступні описи:

 

Ім¢я типа Назва типа
int ціле
short int коротке ціле
lonq int довге ціле
unsigned short int коротке ціле без знака
unsigned int ціле без знака
unsigned lonq int довге ціле без знака
float з плаваючою крапкою
double з плаваючою крапкою подвійної точності
long double довге дійсне
char ціле
unsigned char ціле без знака (0 .. 256)

 

 


Дані типу char займають в пам'яті 1байт. Тип char є типом ціле. Може бути із знаком і без. В компіляторі встановлена опція „значення без знака ”.

Значення типу char є символом, укладеним в одинарні лапки. Може використовуватися група символьних констант при виведенні:

 

Символ Призначення
звуковий сигнал при виведенні
\n перехід на новий рядок
\t табуляція
\\ символ «\»
\' символ одинарної кавички
\'' символ подвійної кавички

 

Розмір пам'яті, що відводиться для зберігання змінних стандартного типу, (а отже і діапазон їх значень) залежить від компілятора і ОС.

До похідних типів відносяться масиви, структури, об'єднання, класи, типи функцій, указники, посилання.

 

Оголошення типів

 

Можна створювати свої типи . Формат об¢явлення типа:

typedef <визначення типа> < ім¢я типа> ;

Наприклад, typedef double MyType;

 

Приведення типів

В арифметичних виразах, які містять лементи різних арифметичних типів, система в процесі обчислень автоматично виконує перетворення типів, яке здійснюється по принципу: якщо операція має операнди різних типів, то тип операнда „молодшого” типу приводиться до типу операнда „старшого” типу. В операції присвоювання приведення приводиться до типу лівого операнда.

Можна вказувати явне приведення типів за допомогою операції явного приведення типів:

(<тип>)

Наприклад, int m=1,n=2;

double A=(double)m/n;

Елементарний ввід-вивід

 

1) Введення-виведення в стилі С

2) Введення-виведення в стилі С++

3) Розробка програм реалізації лінійних алгоритмів

 

Ввід-вивід в стилі С

 

Обов'язкове підключення заголовного файла відповідної бібліотеки введення-виведення

#include <stdio.h>

Вивід в стилі С

 

Використовується спеціальна функція printf()

Формат функції:

printf (<формат виводу> <список виводу>);

<Формат виводу> - рядкове значення, яке може містити пояснюючий текст і формат для кожного значення що виводиться. Послідовність форматів і змінних виведення повинна співпадати по типу.

<список виводу> - змінні або вирази. Елементи списку розділяються комами.

Опис формату

%[ширина][.точність]<тип>

<тип> може бути:

 

Формат Опис
с символ
d, i десяткове ціле із знаком
u десяткове ціле без знака
f дійсне
s рядок

 

Наприклад,

printf (“Добрий день!”);

printf (“при Х=%f, Y=%f”, X,Y);

Ввід в стилі С

 

Використовується функція scanf()

Вводить символи, перетворює їх згідно формату і записує в змінну.

Формат опису:

printf (<формат вводу> <список вводу>);

<список вводу> - указуються адреси змінних, тому попереду змінної пишеться символ &, що означає операцію узяття адреси. Елементами списку можуть бути тільки змінними.

Наприклад,

scanf (“%d %d”,&x,&y);

 

Ввід-вивід в стилі С++

 

Обов'язкове підключення заголовного файла відповідної бібліотеки введення-виведення.

#include <iostream.h>

Вивід в стилі С++

 

Для виведення використовується стандартний потік виведення cout і операція << - помістити в стандартний потік виведення. Операція використовується для кожного елемента виведення. Наприклад

cout << “Здрастуйте,”<<name;

cout <<”Послухайте дзвінок \а\n”;

 

Для форматування даних використовуються символьні константи або маніпулятори потоку, приведені в таблиці.. При використовуванні маніпуляторів необхідне підключення бібліотеки

 

#include <iomanip.h>

Манипулятор Призначення
endl Перехід на новий рядок і викид буфера виводу
hex Установка 16-річного формату виводу числових значень cout<<hex<<n;
oct Установка 8-річного формату виводу числових значень cout<<oct<<n;
dec Установка 10-річного формату виводу числових значень cout<<dec<<n;
setprecision (<n >) n - точність числа Установка кількості знаків дробової частини дійсного числа cout<< setprecision(5)<<value; Діє до нової установки. Точність по умовчанню - 6, встановлюється при n=0.
setw(<n>) n - ширина поля Установка ширини поля для вводу чи виводу cout<< setw(10)<<value;

 

Ввід в стилі С++

 

Для введення використовується стандартний потік введення cin і операція >> - помістити в стандартний потік введення. Операція використовується для кожного елемента введення. Наприклад,

cin>>a;

 

Питання для самоперевірки

 

1) Написати оператор виводу для виведення сповіщення "Це програма!"

2) Написати оператор вводу для введення одного цілого значення.

3) Прочитати 3 цілих числа з клавіатури і занести їх значення в змінні X, Y, Z.

4) Що буде виведено після виконання операторів

a=7;

b=2;

coun<<"a+b"<<endl;

5) Описати цілу змінну з ініціюванням.

6)Написати оператор виводу для виведення дійсного значення Х з точністю 4 знаки після коми в полі з 10 позицій.

7)Записати оператор виводу який виводить результат обчислення функції Y=sin X при заданному значенні Х. Точність аргументу повинна бути не менше двох знаків після коми, а результату - чотири.

8)Описати дві дійсні змінні з ініціюванням.

9)Описати символьну змінну з ініціюванням.

10) Що буде надруковано програмою:

int a,b; char c;

cdin>>a>>b>>a>>c;

cout<<a<<b<<a<<c;

якщо введено рядок значень 1 3 5 7

11) Що буде виведено пiсля виконання операторiв

c=5; cout<<c<<++c<<c<<endl;

12) Що буде виведено пiсля виконання операторiв

c=5; cout<<c<<c--<<c<<endl;

Розробка програми реалізації лінійних алгоритмів

 

Приклад . Розробити програму знаходження площини довільного прямокутного трикутника з заданими катетами.

 

Вивчивши завдання, визначаємо, що для одержання результату необхідно знати катети трикутника. Тому вхідними даними будуть значення катетів трикутника. Вихідні дані – значення площини. Для одержання значення площини використовуємо відому з математики формулу визначення площини прямокутного трикутника: , де a,b - катети прямокутника.

 

Алгоритм рішення задачі і текст програми:

       
 
   
#include <iostream.h> void main () { float a,b,S; cout<<”Введіть катети ”; cin>>a>>b; S=1/2*a*b; Cout<<”S=”<<S<<endl; }
 









Дата добавления: 2015-08-26; просмотров: 1125;


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

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.017 сек.