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

Написание программы вычисления сопротивления электрической цепи, состоящей из двух параллельно и двух последовательно соединенных сопротивлений. Схема машинного алгоритма по условию задачи. Применение операций при написании программ на языке C/C++.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 09.11.2010
Размер файла 17,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

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

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

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

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

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

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;

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

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);}


Подобные документы

  • Написание программы, состоящей из двух модулей и реализующей простейший калькулятор. Разработка алгоритма решения задачи, реализация его в среде программирования Delphi. Список использованных переменных. Блок-схема программы, руководство пользователя.

    курсовая работа [106,6 K], добавлен 16.06.2014

  • Вычисление физических параметров реальной электрической цепи посредством преобразования её к эквивалентной. Схема алгоритма программы и ее разработка на языках программирования СИ и С++, результаты расчета зависимостей эквивалентных сопротивлений.

    курсовая работа [19,9 K], добавлен 15.10.2010

  • Разработана программа решения двух задач на языке программирования Turbo Pascal. Спецификация задания. Описание входных и выходных данных. Математическая постановка задачи. Алгоритм ее решения. Описание и блок-схема программы. Результаты тестирования.

    курсовая работа [275,8 K], добавлен 28.06.2008

  • Основные принципы разработки программ. Разработка алгоритма решения задачи о пересечении двухвыпуклым многоугольником. Реализация разработанного алгоритма на языке программирования. Тесты для проверки работы программы. Графическая иллюстрация решения.

    курсовая работа [53,3 K], добавлен 20.11.2015

  • Написание программы для вычисления функции f(x), изображенной на графике, используя оператор if. Построение графика функции. Составление программы, вычисляющей сумму 101 из последовательно расположенных нечетных чисел. Нахождение корней системы уравнений.

    контрольная работа [694,4 K], добавлен 07.08.2013

  • Решение трансцендентного уравнения методом Ньютона. Построение графика функции. Блок-схема алгоритма решения задачи и программа решения на языке Pascal. Вычисление значения интеграла методом трапеции, блок-схема алгоритма, погрешности вычисления.

    задача [163,4 K], добавлен 16.12.2009

  • Исследование арифметических выражений и разработка простых программ. Таблица переменных для алгоритма и программы. Алгоритм решения, текст программы на языке С. Разработка программы вычисления значений выражений, сравнение результатов с ручным подсчетом.

    лабораторная работа [282,7 K], добавлен 30.01.2015

  • Разработка программы на языке Visual Basic для расчёта составной конструкции системы двух тел. Написание программы для расчёта реакций составной конструкции при шарнирной и скользящей заделке. Исследование зависимости реакции опоры от направления силы.

    курсовая работа [34,5 K], добавлен 16.09.2010

  • Формулировка, спецификация и математическая постановка задачи. Описание схемы алгоритма. Рассмотрение результата машинного тестирования программы. Получение на занятиях навыков алгоритмизации и программирования задач на языке высокого уровня C#.

    курсовая работа [268,2 K], добавлен 22.03.2015

  • Разработка программы на языке С++ по определению величин и направлений токов в ветвях электрической цепи с использованием метода Гаусса. Блок-схема алгоритма. Контрольный расчет с помощью электронных таблиц Excel, используя метод обратной матрицы.

    курсовая работа [30,3 K], добавлен 10.11.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.