Операторлор жана туюнтмалар
C++ти эсептөөгө, маанилерди салыштырууга жана чечим кабыл алууга үйрөтөбүз
Негизги идея: Оператор — бул C++ке маанилер менен бир нерсе кылууну айткан белги, мисалы кошуу үчүн
+ же салыштыруу үчүн <. Маанилер менен операторлорду бириктиргенде, туюнтма пайда болот — жана ар бир туюнтма бир натыйжага чейин эсептелет.
Сабактын аягында сен:
- арифметикалык операторлорду
+ - * / %колдоно аласың, - маанилерди
== != < > <= >=менен салыштыра аласың, - шарттарды
&& || !менен бириктире аласың, - туюнтма кантип эсептелерин болжой аласың,
7 / 2эмне үчүн3, ал эми7.0 / 2эмне үчүн3.5экенин түшүндүрө аласың.
1. Арифметикалык операторлор
Алар кадимки математиканы аткарат. Жалгыз кызык оператор — бул % (калдык же модуло деп аталат): ал бөлүүдөн кийинки калдыкты берет. Мисалы, 7 % 3 — 1, анткени 3 санынын ичине 7 эки жолу батат, 1 калат.
#include <iostream>
using namespace std;
int main() {
int a = 7, b = 3;
cout << a + b << endl; // 10
cout << a - b << endl; // 4
cout << a * b << endl; // 21
cout << a / b << endl; // 2 (integer division)
cout << a % b << endl; // 1 (remainder)
return 0;
}
Чыгаруу:
10
4
21
2
1
Байка:
7 / 3 2 берди, 2.33 эмес. Муну кийинки бөлүктө түшүндүрөбүз.2. Бүтүн сандык бөлүү жана ондук бөлүү
Бул дээрлик ар бир жаңы баштаган адамды чаташтырат. C++те сандардын түрү бөлүүнүн кандай болорун чечет:
- Эгер эки жагы тең бүтүн сан болсо (
int), C++ бүтүн сандык бөлүү жасайт жана бөлчөк бөлүгүн таштайт. Ошондуктан7 / 2—3,3.5эмес. - Эгер жок дегенде бир жагы
doubleболсо (ондук чекити бар сан), C++ ондуктарды сактайт. Ошондуктан7.0 / 2—3.5.
#include <iostream>
using namespace std;
int main() {
cout << 7 / 2 << endl; // 3 both are int
cout << 7.0 / 2 << endl; // 3.5 one is double
cout << 7 / 2.0 << endl; // 3.5 one is double
double x = 7;
cout << x / 2 << endl; // 3.5 x is double
return 0;
}
Чыгаруу:
3
3.5
3.5
3.5
Ондук жооп алуу үчүн бир маанини
double кыл — мисалы, 7 ордуна 7.0 жаз.