
- •Дополнительный код для представления целых чисел со знаком Числа без знака
- •Числа со знаком
- •Свойства дополнительного кода
- •Ещё два свойства дополнительного кода
- •Перенос и переполнение
- •Почему "дополнительный"
- •Знак числа в дополнительном коде
- •Число двойной точности
- •Определение
- •[Править]Аксиомы
- •[Править]Логические операции
- •[Править]Свойства логических операций
- •Имена (идентификаторы)
- •Объявления переменных
- •Операции присваивания
- •28) Разветвляющийся вычислительный процесс (if else)
- •Блок-схема алгоритма поиска корня уравнения методом половинного деления (дихотомии)
- •34,35) Операторы цикла
- •Цикл с предусловием while
- •Цикл с постусловием repeat
- •Цикл с параметром for
- •Рекомендации по использованию циклов
- •Процедуры передачи управления
- •36) " Массивы в языке с. "
- •2. Поиск минимального и максимального элементов в массиве
- •40) Индексирование
28) Разветвляющийся вычислительный процесс (if else)
Разветвляющийся вычислительный процесс– это процесс, в котором вычисление идет по одному из двух путей, в зависимости от того, выполняется или нет какое- либо логическое условие. Для организации такого процесса используют логический оператор if (если). Этот оператор имеет три формы записи:
1)
if (логическое выражение) {Оператор 1;
оператор 2;
..........
}
else {Оператор 1;
оператор 2;
..........
}
В этом случае в фигурных скобках может стоять и по одному оператору. Если логическое выражение имеет значение истина, то выполняется первая группа операторов, а вторая, стоящая после else, не выполняется. Если же логическое выражение 1 имеет значение ложь, то выполняются операторы, стоящие после else.
2)
if (логическое выражение) {Оператор 1;
оператор 2;
..........
}
В этом случае, если логическое выражение имеет значение истина, то выполняются операторы записанные в фигурных скобках, если же логическое выражение имеет значение ложь, то выполняются операторы, записанные после оператора if.
Пример:
#include
using namespace std;
void main()
{setlocale(LC_ALL,"Russian");
double a, b, c;
cout<<"\n Введите a:";
cin>>a;
cout<<"\n Введите b:";
cin>>b;
if (a>b) {c=a+b;
}
else {c=a-b;
}
cout<<"\n c="<<c;
cout<<endl;
}
В этой простой программке, если с клавиаткры вводятся числа a и b и a>b, то вычисления идут по формуле c=a+b, иначе c=a-b
30,31,32) Циклы
Одной из основополагающих структур данных являются циклы. Цикл — это какое либо действие, которое постоянно повторяется, пока не будет достигнут нужный результат. Например если вы точите карандаш с помощью точилки, вы выполняете слеюдующий цикл — крутить карандаш в точилке, пока он не станет острым. Давайте рассмотрим основные циклы, которые используются в языке с++.
1. Цикл for.
Цикл for() используется в случае, если известно точное число повторов действия. Например в в случае открывания замка, мы знаем что надо повернуть ключ 2 раза.Общий вид цикла такой:
view sourceprint?
1.for(переменная; условие; счетчик){
2.
3.//операции, которые повторяются
4.
5.}
Например имеется такая задача: ввести с клавиатуры массив из 5 чисел. Мы конечно могли бы написать так:
view sourceprint?
01.int a[5];
02.
03.cin>>a[0];
04.
05.cin>>a[1];
06.
07.cin>>a[2];
08.
09.cin>>a[3];
10.
11.cin>>a[4];
но как вы заметили — это не совсем удобно. Представляете что будет, если потребуется ввести 100 элементов? Вот для того, чтобы сократить повторяющиеся участки кода и используют циклы.
Вот более элегантное решение:
view sourceprint?
1.int a[5];
2.
3.for(int i=0;i<5;i++){
4.
5.cin>>a[i];
6.
7.}
2. Цикл while() — кол-во повторов этого цикла заранее не известно, известен только результат, к которому нужно прийти. Имейте ввиду, если указанная последоватльностьне приводит к результату, то цикл будет повторяться бесконечно.
Общий вид цикла:
view sourceprint?
1.while(результат к которому ведет тело цикла){
2.
3.//тело цикла
4.
5.}
Пример использования: Сосчитаем кол-во символов в строке. Как известно строки оканчиваются на ‘\0′, именно это значение будет результатом.
view sourceprint?
01.int i = 0;
02.
03.char *str = "Hello";
04.
05.while(a[i]!='/0'){
06.
07.i++;//число символов
08.
09.}
По другому цикл while называют циклом с предусловием.
3. Цикл do … while () — по другому цикл с постусловием. Он отличается от цикла while тем, что тело цикла в любом случае выполняется, хотя-бы 1 раз.
Общий вид цикла:
view sourceprint?
1.do{
2.
3.//тело цикла
4.
5.}while(условие);
33)
Программа на С++ поиск корня нелинейного уравнения методом половинного деления (дихотомии)
Составить программу на языке программирования С++ и блок-схему для решения следующей задачи: уточнить приближенное значение корня нелинейного уравнения f(x) = 0 на заданном отрезке [a,b] методом половинного деления (дихотомии) с точностью ε = 0.001.
Уравнение имеет вид: x3 - 9x2 + 20x – 11=0
Отрезок, на котором осуществляется поиск корня: [0; 1]