С++ тіліндегі программаның жалпы құрылымы:
#include < 1 кітапхана аты>
#include < 2 кітапхана аты >
...
#include " жүктелетін файл1 аты "
#include " жүктелетін файл2 аты "
...
// функция прототиптері (тақырыптар)
// ауқымды идентификаторлар (типтер, айнымалылар және т.б.)
void main()
{
// айнымалыларды сипаттау
// операторлар бөлімі
}
// функцияларды орындауға жіберу
С++ тлінде қолданылатын операциялар
Операция
|
Мәні
|
()
|
Функцияны шақыру
|
[]
|
Массивті белгілеу
|
.
|
Нысанның өзі арқылы өрістер мен әдістерге қатынасу
|
->
|
Нысанға сілтеме жасау арқылы өрістер мен әдістерге қатынасу
|
!
|
Логикалық терістеу
|
~
|
Биттік терістеу
|
-
|
Таңбаны өзгерту
|
++
|
инкремент
|
--
|
декремент
|
&
|
Адресті алу (&a)
|
*
|
(a*) адресіне қатынасу
|
(тип)
|
Типті өзгерту
|
sizeof()
|
Байттағы өлшемі
|
*
|
көбейту
|
/
|
бөлу
|
%
|
Бөлгендегі қалдық
|
+
|
қосу
|
-
|
алу
|
<
|
кіші
|
>
|
үлкен
|
<=
|
Кіші не тең
|
>=
|
Үлкен не тең
|
==
|
тең
|
!=
|
Тең емес
|
&
|
Разрядты логикалық ЖӘНЕ
|
^
|
Дәреже
|
|
|
Разрядты логикалық НЕМЕСЕ
|
&&
|
логикалық ЖӘНЕ
|
||
|
логикалық НЕМЕСЕ
|
?:
|
шартты операция
|
=
|
Меншіктеу операциясы
|
,
|
Үтір операциясы
|
+= -= *= /= <<= >>= &= |= ^=
|
Бинарлық операциялар
|
Меншіктеу операциясы — программалау тілінің кез келгенінде қолданылатын ең қарапайым әрі жиі қолданылатын операция.
Жалпы түрде жазылуы:
айнымалы = өрнек;
Меншіктеу мысалдары:
X = (Y + Z) / (2 + Z * 10) - 1/3;
LogPer = (A > B) && (C <= D);
Стандартты арифметикалық түрлендіру ережесі
Кіріс типі
|
Түрлендірілуі
|
Түрлендіру ережесі
|
char
|
int
|
char үнсіз келісім бойынша нөлге немесе таңбаға өзгереді
|
unsigned char
|
int
|
Үлкен байт нөлмен толтырылады
|
signed char
|
int
|
Таңбамен кеңейтілуі
|
short
|
int
|
Сол мән сақталады
|
unsigned short
|
unsigned int
|
Сол мән сақталады
|
enum
|
int
|
Сол мән сақталады
|
битовое поле
|
int
|
Сол мән сақталады
|
C++тілінде сонымен қатар қалдық табу операциясы бар.
Мысалы, 15 / 3 = 5; 18 / 5 = 3; 123 / 10 = 12, 7 / 10 = 0.
Бірақ! 18 / 5.0 = 3.6, 7.0 / 10 = 0.7
% операциясының көмегімен бүтін санның қалдығын табуға болады. Мысалы: 15 % 3 = 0; 18 % 5 = 3; 123 % 10 = 3, 7 % 10 = 7.
Алгебралық өрнектерді жазу кезінде math.h кітапханасынан функциялар дөңгелек жақшаға алынып қолданылады.
math.h кітапханасының математикалық функциялары
Математикалық жазба
|
C++ жазылуы
|
cos x
|
cos(x)
|
sin x
|
sin(x)
|
tg x
|
tan(x)
|
chx
|
cosh(x)
|
shx
|
sinh(x)
|
th x
|
tanh(x)
|
arccosx
|
acos(x)
|
arcsinx
|
asin(x)
|
arctg x
|
atan(x)
|
ex
|
exp(x)
|
xy
|
pow(x,y)
|
|x|
|
fabs(x)
|
|
sqrt(x)
|
ln x
|
log(x)
|
log10x
|
log10(x)
|
Математикалық өрнектердің жазылу мысалдары:
Математикалық жазба
|
C++ тілінде жазылуы
|
1. x2 – 7x + 6
|
pow(x,2) - 7 * x + 6
|
2.
|
(fabs(x) - fabs(y)) / (float)(1 + fabs(x * y))
|
3.
|
log(fabs((y - sqrt(fabs(x))) * (x - y / (z + pow(x,2) / 4.0))))
|
Өз бетінше орындауға арналған тапсырмалар
Мысалы:
өрнегінің мәнін есептеуге арналған программа құрыңдар:
// программасы
#include
#include
void main()
{
float x,z;
cout << " X айнымалысының мәнін енгіз: ";
cin >> x;
z = 6 * log(sqrt(exp(x + 1) + 2*exp(x)*cos(x))) /
log(x - exp(x + 3) * sin(x)) + fabs(cos(x) / exp(sin(x)));
cout.width(4);
cout << "Өрнектің мәні: " << Z;
}
№1. x, y, z сандары берілген. а мен b-ны анықтаңыз
a)
б)
в) г)
д) e)
№2. Тек қана төрт амалды (қосу, азайту, көбейту, бөлу) қолданып есептеңіз
№3
а) - дәрежесін екі операциямен есептеңіз
б) - дәрежесін үш операциямен есептеңіз
в) - дәрежесін төрт операциямен есептеңіз
г) - дәрежесін үш операциямен есептеңіз
д) - дәрежесін төрт операциямен есептеңіз
е) - дәрежесін төрт операциямен есептеңіз
ж) - дәрежесін бес операциямен есептеңіз
з) - дәрежесін бес операциямен есептеңіз
и) - дәрежесін алты операциямен есептеңіз
к) - дәрежесін алты операциямен есептеңіз
л) - дәрежесін алты операциямен есептеңіз
Бақылау сұрақтары мен тапсырмалар
1. Өлшем дегеніміз не?
2. Аралық мәндер деп нені айтамыз? Мысал келтір.
3. C++ тіліндегі қандай қарапайым типтер бар?
4. C++тілінің жалпы құрылымы қандай ?
5. Шығару форматы дегеніміз не?
6. Келесі программаның мәні қандай?
// Example программасы
#include
void main()
{
int n;
cout << "Үш орынды натурал сан енгіз: ";
cin >> n;
cout << "Алынатын нәтиже: " << N / 100 + N / 10 % 10 + N % 10;
}
7. C++ тілінде жазылған жазбаға сәйкес келетін алгебралық өрнекті жазып шығыңыз:
а) (a + b) / c; б) a + b / c; в) a / b / c; г) a / (b * c);
д) (a + b) / (d + c); е) a + b / (d + c);
ё) a + b / d + c; ж) (a + b) / d + c.
Негізгі әдебиеттер
Культин Н.Б. Turbo Pascal в задачах и примерах. –СПб: БХВ-Петербург, 2003
Зуев Е.А. Turbo Pascal Практическое программирование. –М.: ПРИОР, 1999
Гусева А.И. Учимся программировать: Pascal 7.0. Задачи и методы их решения. –М., 1999
Епанешников А., Епанешников В. Программирование в среде Turbo Pascal 7.0. –М.: ДИАЛОГ-МИФИ, 2000
Юркин А.Г. Задачник по программированию. –СПб.:Питер, 2002
Немнюгин С.А. Turbo Pascal: практикум. –СПб.: Питер, 2000
Балабекова М.Ж. Технология и сопровождение ПО, 2009ж. Байтерек Алматы қаласы
Фаронов В.В. Турбо-Паскаль 7.0. Начальный курс. Учебное пособие. –М.: Нолидж, 2004
Марченко А.И., марченко Л.А. Программирование в среде Turbo Pascal 7.0. Киев: ВЕУ, 2000
Федоренко Ю. Алгоритмы и программы на Turbo Pascal. Учебный курс. –СПб: Питер, 2001
irbis.vkgu.kz/portal/downloads/po5 d6f98.ppt
Практикалық жұмыс №2
Тақырыбы: Шартты оператор. Шартты оператордық толымды және толымсыз түрі. Ауыстырып қосқыш.
Жұмыстың мақсаты: Студенттерге түрлі есептер шығару кезінде шартты оператордың толымды және толымсыз түрін, сонымен қатар таңдау операторлары жайында түсінік беріп, алған білімдерін зертханалық есептер шығару барысында қолдану дағдыларын қалыптастыру.
Жұмыс барысы: Практикалық жұмыс кезінде есептердің барлығын бірдей сызықтық құрылыммен сипаттау мүмкін емес. Қандай да бір шарттты тексергеннен кейін операторлар тізімі орындалу барысында бұзылады. Осы мақсатта басқарушы операторлар қолданылады. Шартты оператор программада қандайда да бір шарттың орындалуына байланыст тармақталуды жүзеге асырады. Оның жалпы белгіленуі төмендегідей:
if ( өрнек ) серия1; else серия2;
Шарт ретінде ұсынылатын өрнектің мәні нөлге (0) тең болса, онда else (серия2) өрнегінен кейінгі операторлар орындалады. Ал нөлге (0) тең болмаса, онда if операторынан кейінгі өрнек орындалады. Логикалық өрнекті жазу кезінде = = (равно) таңбасын нақты айнымалыларға (double) қолданудың қажеті жоқ, себебі олар нақты берілмейді. Көрсетілген қателікті болдырмас үшін шартты берілген нақтылықпен талап ету орынды, яғни X = = Y қатынасының орнына fabs(X - Y) < 1E-8 өрнегін қолданған дұрыс. Шартты оператор толық орындалмайтын болғандықтан, шартты оператордың толымсыз түрі қолданылады:
Достарыңызбен бөлісу: |