Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабораторная работа №3

.docx
Скачиваний:
4
Добавлен:
09.07.2021
Размер:
67.14 Кб
Скачать

Министерство образования и науки Российской федерации

Томский государственный университет систем управления и

радиоэлектроники (ТУСУР)

Лабораторная работа по информационным технологиям:

Лабораторная работа № 4. Подпрограммы.

Вариант 23

Выполнил

Студент заочного

отделения гр. З-66

Шерстюк П.В.

_________

Проверил

Старший преподаватель

кафедры ПРЭ

Савин Д.А.

_________

Томск 2017

Цель работы

Научиться создавать подпрограммы и вызывать их из тела основной функции. Освоить применение оператора return, возвращающего значение функции. Научиться передавать параметры в функцию и корректно возвращать значения – результаты вычислений из функции. Освоить передачу параметров в функцию по значению, по ссылке и по указателю. Научиться создавать прототипы функций, освоить перегрузку функций. Изучить функции библиотеки math.h. Научиться пользоваться средствами пошаговой трассировки кода и просмотра текущих значений переменных.

Задание на лабораторную работу

1. Написать подпрограмму в соответствии со своим вариантом индивидуального задания. Реализовать вызов функции из главной программы и вывод результатов вычисления на экран. Отладить и протестировать программу. В процессе отладки пользоваться средствами пошаговой трассировки кода и окнами просмотра текущих значений переменных (Watch и Locals).

2. Написать прототип функции. Передачу параметров в функцию реализовать тремя изученными методами: по значению, по ссылке и по указателю. Вывести в окно Watch адреса указателей, ссылок и значений переменных, используемых для обращения к параметрам функции.

3. Продемонстрировать в работе использование оператора return, использование прототипа функции и перегрузку функций.

4. В отчете отразить процесс трассировки кода, результаты работы программы, листинг программного кода с комментариями, блок-схему программы.

Вариант индивидуального задания: 23

Написать функцию int f(int h, int m, int s), которая принимает три целых аргумента (часы h, минуты m и секунды s) и возвращает количество секунд, прошедших с начала дня.

Исходный код программы:

// Лабораторная работа №4.cpp : Defines the entry point for the console application.

//

#include "stdafx.h"

#include <conio.h>

#include <iostream>

using namespace std;

int f(int h, int m, int s){

return h*3600+m*60+s;}

int f1(int (*h), int (*m), int (*s))

{

return (*h)*3600+(*m)*60+(*s);}

int f2(int (&h), int (&m), int (&s))

{

return h*3600+m*60+s;}

void _tmain(int argc, _TCHAR* argv[])

{

int h,m,s;

cout << "Vvedite h,m,s"<<endl;

cin >> h >> m >> s;

cout<<"Rezultat: " << f(h,m,s)<<endl;

cout << "Vvedite h,m,s"<<endl;

cin >> h >> m >> s;

cout<<"Rezultat: " << f1(&h,&m,&s)<<endl;

cout << "Vvedite h,m,s"<<endl;

cin >> h >> m >> s;

cout<<"Rezultat: " << f2(h,m,s)<<endl;

system ("pause");

}

Результат работы программы

Вывод:

Мы научились передавать параметры в функцию по значению, по указателю и по ссылке.

Научились выводить в окно Watch адреса указателей, ссылок и значений переменных, используемых для обращения к параметрам функции. Отразили процесс трассировки кода, результаты работы программы, листинг программного кода

Соседние файлы в предмете Информационные технологии
  • #
    09.07.20212.07 Mб0Лабораторная работа №1.ncb
  • #
    09.07.2021991 б0Лабораторная работа №1.sln
  • #
    09.07.202116.9 Кб1Лабораторная работа №1.suo
  • #
    09.07.20214.55 Кб3Лабораторная работа №1.vcproj
  • #
    09.07.20211.42 Кб0Лабораторная работа №1.vcproj.MATRIXX.Павел.user
  • #
  • #
  • #
    09.07.20212.06 Mб0Лабораторная работа №4.ncb
  • #
    09.07.2021991 б0Лабораторная работа №4.sln
  • #
    09.07.202116.9 Кб0Лабораторная работа №4.suo
  • #
    09.07.20214.55 Кб0Лабораторная работа №4.vcproj