РефератыИнформатика, программированиеПрПримеры решения задач по программированию

Примеры решения задач по программированию

Министерство образования Республики Беларусь


БЕЛОРУССКИЙ НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ


МЕЖДУНАРОДНЫЙ ИНСТИТУТ ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ


Группа 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;


int mas[5]; // объявлениемассива mas


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] на


// функции и инициализация его именами функций


intchoice;


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]); // использование структуры повторения dowhile


if(i<m) m=i;


printf("Min :%d", m);


}


// вычисление суммы чмсел


voidfun2(intb)


{


inta;


intm; // максимальное число


puts("Введите числа. Для завершения ведите 0:");


m=0;


do {scanf("%d",&a); // использование структуры повторения dowhile


if(a>m) m=a; // тело цикла выполняется пока значение условия (a>0)


} while(a>0); // является истина


printf("Максимальное число :%d", m);


}


voidfun3(intc)


{


inta, 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)


{ inta, 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)


{ inta, 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 для вызова функции fun3n", r);}

Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Примеры решения задач по программированию

Слов:1219
Символов:12503
Размер:24.42 Кб.