- •Информатика основы
- •Предисловие
- •Введение
- •Программы
- •1.1. Элементы языка
- •Список основных ключевых слов
- •Типы числовых данных
- •Разделители
- •Основные бинарные операции
- •Математические функции
- •1.2. Структура программы
- •1.3. Выполнение программы
- •Контрольные вопросы
- •2.1. Загрузка и настройка системы программирования
- •2.2. Создание и работа с проектом
- •Условные графические обозначения основных блоков схем алгоритмов
- •Словесно-формульный алгоритм
- •Листинг 2.1. Lin_prog.Cpp
- •Результат выполнения программы
- •3.2. Логический тип данных и базовые логические операции
- •Операции сравнения
- •Логические операции
- •При решении задач с множеством логических условий программа существенно упрощается, если эти условия удается объединить с помощью операций и, или, не в более крупные выражения.
- •Словесно-формульный алгоритм
- •Результат выполнения программы
- •Результат выполнения программы
- •Упражнения
- •Варианты заданий
- •Области определения функции z (X,y)
- •Контрольные вопросы
- •4. Организация циклов
- •4.1. Организация программ с циклами
- •For (инициализация; условие; модификация) операторы
- •4.2. Инкремент, декремент и составные операции
- •Составные операции присваивания
- •Результат выполнения программы
- •Результат выполнения программы
- •Упражнения
- •Варианты заданий
- •Контрольные вопросы
- •5.Составление программ с массивами
- •5.1. Организация программ с массивами
- •Тип имя_массива [n];
- •Имя_массива [индекс]
- •Тип имя_массива [размер_1] [размер_2]
- •5.2. Манипуляторы и форматирование ввода-вывода
- •Манипуляторы
- •Результат выполнения программы
- •Результат выполнения программы
- •Контрольные вопросы
- •Дайте определение массива.
- •6. Составление программ с использованием функций
- •6.1. Описание, объявление и вызов функций
- •Механизм возврата из функции реализуется оператором
- •Тип имя_функции (тип размерность, тип имя_массива[ ]) ,
- •6.2. Глобальные и локальные переменные
- •Результат выполнения программы
- •6.3. Перегруженные функции
- •Результат выполнения программы
- •Упражнения
- •Варианты заданий
- •Контрольные вопросы
- •7. Программирование с использованием указателей
- •7.1. Общие сведения об указателях
- •7.2. Динамические массивы
- •Результат выполнения программы
- •Результат выполнения программы
- •7.3. Указатели и функции
- •Результат выполнения программы
- •Упражнения
- •Варианты заданий
- •Контрольные вопросы
- •8. Программирование с использованием структур
- •8.1. Определение структур
- •8.2. Организация программ с использованием структур
- •Имя_структуры . Имя_элемента_структуры
- •Список товаров
- •Результат выполнения программы
- •Упражнения
- •Варианты заданий
- •Контрольные вопросы
- •Библиографический список
- •Основные бинарные операции
- •Операции сравнения
- •Составные операции присваивания
- •Логические операции
- •Типы числовых данных
- •Константы, используемые в математических выражениях
- •Математические функции
- •Типовые сообщения об ошибках
- •Оглавление
Результат выполнения программы
Матрица a:
....5.83 ....7.96 ...10.09 ...12.22 ...14.35 ...16.48 ...18.61
..-7.788 ..-8.943 ..-8.918 ..-8.473 ..-7.832 ..-7.083 ..-6.268
..-1.958 .-0.9834 ...1.172 ...3.747 ...6.518 ...9.397 ...12.34
..-9.746 ..-9.927 ..-7.746 ..-4.726 ..-1.314 ...2.315 ...6.074
...-11.7 ..-10.91 ..-6.573 .-0.9794 ...5.204 ...11.71 ...18.42
..-21.45 ..-20.84 ..-14.32 ..-5.706 ...3.891 ...14.03 ...24.49
..-33.15 ..-31.75 ..-20.89 ..-6.685 ...9.095 ...25.74 ...42.91
Число элементов в четных столбцах матрицы a,
не принадлежащих интервалу (5,10):
k=19
Произведение отрицательных элементов в 7 строке
нечетных столбцов матрицы a:
p=692.6
!! Проанализируйте программу. Создав новый файл проекта с именем mass_1.ide, наберите в нем текст данной программы, откомпилируйте ее и произведите запуск программы на выполнение.
Пример 2. Дана целочисленная матрица А(4,3). Получить матрицу В(4,3) по правилу , (i=1,…,4;j=1,…,3).
В матрице А найти произведение элементов, стоящих ниже первой строки, а во втором столбце матрицы В определить количество единичных элементов.
Программа для решения данной задачи приведена в лист. 5.2.
Листинг 5.2. mass_2.сpp
#include <iostream.h>
#include <math.h>
#include <iomanip.h> //Подключение заголовочного файла, включающего
//модификатор setw (установка ширины вывода)
void main()
{
long b[4][3],a[4][3]={{ 1,-2 , 3 }, //Инициализация матрицы a
{4 , 5 , -6},
{-7, -8 , 9 },
{10,11,12}};
//Получение матрицы b
for(int i=0;i<4;i++)
for(int j=0;j<3;j++)
b[i][j]=(a[i][j]<0)? 0:1;
//Вывод матриц a и b
cout<<"Матрица a:"<<"\n";
for(int i=0;i<4;i++)
for(int j=0;j<3;j++)
{cout<<" "<<setw(4)<<a[i][j]; //Фоматирование вывода
if(j==2)cout<<"\n"; //Формирование строки
}
cout<<"Матрица b:"<<"\n";
for(int i=0;i<4;i++)
for(int j=0;j<3;j++)
{cout<<" "<<setw(4)<<b[i][j];
if(j==2)cout<<"\n";
}
//Определение произведения элементов матрицы a,
//стоящих ниже первой строки
long p=1;
for(int i=1;i<4;i++)
for(int j=0;j<3;j++)
p*=a[i][j];
cout<<"p="<<p<<endl;
//Определение количества единичных элементов
//во втором столбце матрицы b
int s=0;
for(int i=0,j=1;i<4;i++)
if (b[i][j]==1) s++;
cout<<"s="<<s<<endl;
}
Результат выполнения программы
Матрица a:
1 -2 3
4 5 -6
-7 -8 9
10 11 12
Матрица b:
1 0 1
1 1 0
0 0 1
1 1 1
p=-79833600
s=2
!! Проанализируйте программу. Создав новый файл проекта с именем mass_2.ide, наберите в нем текст данной программы, откомпилируйте ее и произведите запуск программы на выполнение.
Упражнения
Составить и отладить программу преобразования двумерных массивов согласно приведенным в табл. 5.2 вариантам заданий.
Таблица 5.2
Варианты заданий
1 |
Дана вещественная матрица А(3,3). Получить матрицу В(3,3), каждый элемент которой вычисляется по формуле Сформировать матрицу C(3,3), являющуюся суммой матриц А и В: сij = aij + bij; (i=1,…,3; j=1,…,3) |
2 |
Вещественную матрицу А(3,4) преобразовать в матрицу В(3,4) по правилу (i=1,…,3; j=1,…,4). Найти количество нулевых элементов матрицы А и сумму отрицательных элементов второго столбца матрицы В |
Окончание табл. 5.2
3 |
Даны целочисленные матрицы В(4,4) и С(4,4). Построить матрицу А(4,4), каждый элемент которой вычисляется по формуле , (i=1,…,4; j=1,…,4). В матрице А найти произведение элементов, стоящих выше главной диагонали, а в матрице В – максимальный элемент в третьей строке |
4 |
Дана целочисленная матрица А(4,6). Получить матрицу В(4,6), каждый элемент которой вычисляется по формуле (i=1,…,4; j=1,…,6). В матрице А найти количество отрицательных элементов в четных столбцах. Найти минимальный элемент в четвертом столбце матрицы В и его индекс (номер строки) |
5 |
Получить матрицу А(5,5), для которой , (i=1,…,5; j=1,…,5). Вычислить Z=S/K, где S – сумма элементов побочной диагонали матрицы А; К – количество положительных элементов матрицы А. Построить матрицу В(5,5) по правилу |
6 |
Получить матрицу А(4,4), для которой (i=1,…,4; j=1,…,4). Найти сумму элементов, стоящих правее второго столбца. В третьей строке определить количество отрицательных элементов |
7 |
Дана целочисленная матрица А(5,3). Найти аmax – максимальный элемент в ее нечетных строках. Сформировать матрицу В(5,3) по правилу: , (i=1,…,5; j=1,…,3). Определить среднее арифметическое элементов второй строки матрицы В |