Этикет руководителя как средство повышения эффективности руководства
Министерство
образования Республики Беларусь
БЕЛОРУССКИЙ
НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
МЕЖДУНАРОДНЫЙ
ИНСТИТУТ ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ
Группа
417315
КОНТРОЛЬНАЯ
РАБОТА
по
дисциплине “Основы алгоритмизации и программирования”
Выполнил:
студент
Проверила:
Попова Ю. Б.
Минск 2006
ЗАДАНИЕ № 1
ЗНАКОМСТВО СО СРЕДОЙ.
ОБЪЯВЛЕНИЕ ОСНОВНЫХ ТИПОВ ДАННЫХ. ВВОД/ВЫВОД ДАННЫХ. ОПЕРАЦИИ В ЯЗЫКЕ C/C++
Цель работы
Закрепление практических
навыков построения простой программы, объявления основных типов данных и
организации ввода/вывода переменных, применения операций при написании программ
на языке C/C++.
Постановка задачи
Написать программу
вычисления сопротивления электрической цепи, состоящей из двух параллельно
соединенных сопротивлений, а затем вычислить сопротивление электрической цепи,
состоящей из двух последовательно соединенных сопротивлений.
Листинг программы на
языке C++
#include <clx.h>
#include<iostream.h> // подсоединение к программе
раздела библиотеки с функциями// по потокового ввода/вывода данных
void main()
{ // начало функции
main()
int a, b, c, d; //
объявление переменных a, b, c целого типа
cout<<"Введите
значение сопротивления a и b:"; // вывод строки на экран
cin>>a>>b; //
ввод значений a и b
c=a*b; // умножение
значений a и b и присвоение переменной с
d=a+b; // присваивание
переменной c значения суммы переменных a и b c=c/d;
cout<<"Сопротивление
цепи с последующим соединением ="<<c; // вывод значения переменной c
на экран c=a+b;
cout<<"Сопротивление
цепи с параллельным соединением ="<<c; // вывод значения переменной a на экран cin>>a;
Результаты работы
программы
Введите значения
переменных: 4 7
Результат: 2 и 11
Выводы по лабораторной
работе
В ходе выполнения задания
была составлена схема машинного алгоритма по условию задачи, написан код
программы и получены результаты работы программы. В результате выполнения
работы были закреплены практические навыки построения простой программы на
языке программирования C/C++, в которой были объявлены
переменные целого типа. Организован ввод значений переменных с помощью
оператора потокового ввода, произведен расчет суммы значений переменных и
организован вывод результата на экран с помощью оператора потокового вывода.
ЗАДАНИЕ № 2
ОПЕРАТОРЫ ЯЗЫКА C/C++. ФОРМАТИРОВАННЫЙ ВВОД/ВЫВОД
ДАННЫХ. СТРУКТУРЫ ВЫБОРА. СТРУКТУРЫ ПОВТОРЕНИЯ
Цель работы
Закрепление практических
навыков построения программы на языке C/C++ с использованием структур выбора if-else, switch,
с использованием структур повторения do-while, while, for, а
также с организацией ввода/вывода данных с применением функций форматированного
ввода/вывода.
Постановка задачи
Написать программу
вычисления площади кольца. Программа должна проверять правильность исходных
данных. Использовать структуру выбора if-else. Использовать форматированный
ввод/вывод данных.
Листинг программы на
языке C++
#include
<clx.h>
#include<iostream.h>
void main()
{ int n,x;
cout<<"Введите
значение кольца:"<<endl;
cin>>n;
x=3.14;
if (n<0)
cout<<"Значение не верные"; // если значение условия (n<0)
является истинным, на экран выводится текст Значение не верные
else if
(n>0) cout<<x*n*n;
}
Результаты работы
программы
Введите значения
переменных: 0
Результат: Значения не
верны
Введите значения
переменных: 4
Результат: 48
Выводы по лабораторной
работе
В результате выполнения
работы были закреплены практические навыки построения простой программы на
языке программирования C/C++, в которой были объявлены
переменные целого типа. Организован ввод значений переменных с помощью
оператора потокового ввода, произведен расчет суммы значений переменных и
организован вывод результата на экран с помощью оператора потокового вывода а
также использовалась структуру выбора if-else.
ЗАДАНИЕ № 3
МАССИВЫ И УКАЗАТЕЛИ В C/C++
Цель работы
Закрепление практических
навыков построения программы на языке C/C++ с использованием массивов данных и
переменных типа указатель.
Постановка задачи
1.
Написать
программу, которая проверяет, представляют ли элементы введенного с клавиатуры
массива возрастающую последовательность. Использовать форматированный
ввод-вывод данных.
Листинг программы на
языке C++
#include
<clx.h>
#include<iostream.h>
#include<stdio.h>
void main()
{
int i,a;
printf("Введите элементы массива \n");
for(i=0;i<5;i++) //
использование вложенной структуры повторения for для
{
scanf("%d",&mas[i]); // заносим значение в массив
a=mas[0];
}
printf(" Вывод элементов масива \n");
for(i=0;i<5;i++) //
использование вложенной структуры повторения for для
{
printf("%d",mas[i],"\n"); // вывод суммы элементов массива mas на экран
}
for(i=1;i<4;i++) // использование вложенной
структуры повторения for для if (i++<a) cout<<"Массив
не является возрастающей последовательностью ";
// использование else-if конструкции
}
Результаты работы
программы
Введите значения : 4 7 5
6 8
Результат: 4 7 5 6 8
Массив не является возрастающей последовательностью
Выводы по лабораторной
работе
В ходе выполнения задания
была составлена схема машинного алгоритма по условию задачи, написан код
программы и получены результаты работы программы. В результате выполнения
работы были закреплены практические навыки построения простой программы на
языке программирования C/C++, в которой были объявлен массив MAS. Организован ввод значений
переменных с помощью оператора потокового ввода, произведен расчет значений
массива на возрастающую последовательность и организован вывод результата на
экран с помощью оператора потокового вывода.
ЗАДАНИЕ № 4
ФУНКЦИИ В C/C++. УКАЗАТЕЛИ НА ФУНКЦИИ. ПЕРЕГРУЗКА ФУНКЦИЙ. ШАБЛОНЫ ФУНКЦИЙ
Цель работы
Закрепление практических
навыков построения программы на языке C/C++ с использованием функций,
указателей на функции, массивов указателей на функции, рекурсивных функций,
функций со списком переменной длины, параметров, используемых по умолчанию, аргументов
командной строки, встроенных функций, перегруженных функций и шаблонов функций.
Постановка задачи
Написать программу, в
которой необходимо определить массив указателей на функции. Вводить цифру,
определяющую какую функцию надо выполнить: 0-найти минимальное число, 1-найти
максимальное число, 2-вычислить сумму чисел, 3-вычислить разность чисел,
4-найти произведение чисел, 5-найти частное чисел, 6-завершить работу.
Выполнить соответствующую функцию, используя указатель на нее, и вывести
результаты на экран. В программе предусмотреть использование прототипа функции.
Листинг программы на
языке C++
//---------------------------------------------------------------------------
#include
<clx.h>
#include<stdio.h>
#include<iostream.h>
void
fun1(int);
void
fun2(int);
void
fun3(int);
void
fun4(int);
void
fun5(int);
void
fun6(int);
main()
{
void(*F[6])(int)={fun1,
fun2, fun3, fun4, fun5, fun6}; // объявление массива указателей *F[6] на
// функции и инициализация его
именами функций
int choice;
printf("ВВЕДИТЕ НОМЕР ОТ 0 do 5, 6 ДЛЯ ЗАКРИТИЯ");
scanf("%d",
&choice);
while(choice>=0
&& choice<6)
{ (*F[choice])(choice);
// вызов функции при помощи разыменования
// указателя на функцию.
Указатель на функцию выбирается по индексу choice
// вызванной функции в качестве
аргумента передается переменная choice
printf(" ВВЕДИТЕ НОМЕР ОТ 0 do 5, 6 ДЛЯ ЗАКРИТИЯ");
scanf("%d", &choice);
}
printf("Введено 6 для
завершения");
return 0;
}
void fun1(int
a)
{
int i,s,m;
int mas[5];
m=99; // максимальное число
for(i=0;i<5;i++)
scanf("%d",&mas[i]); // использование структуры
повторения do while
if(i<m)
m=i;
printf("Min
:%d", m);
}
// вычисление суммы
чмсел
void fun2(int b)
{
int a;
int m; // максимальное число
puts("Введите числа. Для завершения
ведите 0:");
m=0;
if(a>m) m=a; // тело цикла
выполняется пока значение условия (a>0)
} while(a>0); // является истина
printf("Максимальное число :%d", m);
}
void fun3(int c)
{
int a, b, x; // объявление переменных a, b, c целого типа
cout<<"Введите значение
переменных a и b:"; // вывод строки на экран
cin>>a>>b; //
ввод значений a и b
x=a+b; //присваивание переменной c значения суммы переменных a и b
cout<<"Сумма="<<x;
}
void fun4(int
d)
{ int a, b, x; // объявление переменных a, b, c целого типа
cout<<"Введите значение
переменных a и b:"; // вывод строки на экран
cin>>a>>b; //
ввод значений a и b
x=a-b; // присваивание переменной c значения суммы переменных a и b
cout<<"Сумма="<<x;}
void fun5(int
e)
{ int a, b, x; // объявление переменных a, b, c целого типа
cout<<"Введите значение
переменных a и b:"; // вывод строки на экран
cin>>a>>b; //
ввод значений a и b
x=a*b; //присваивание переменной c значения суммы переменных a и b
cout<<"Сумма="<<x;}
void fun6(int
r)
{ printf("Введено %d для вызова функции fun3\n", r);}