Мегаобучалка Главная | О нас | Обратная связь


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



2018-07-06 598 Обсуждений (0)
Лабораторная работа №2 0.00 из 5.00 0 оценок




МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

ТАГАНРОГСКИЙ ГОСУДАРСТВЕННЫЙ РАДИОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

КАФЕДРА ТЕОРЕТИЧЕСКИХ ОСНОВ РАДИОТЕХНИКИ

 

 

 

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

К ЛАБОРАТОРНЫМ РАБОТАМ

ПО КУРСУ

ИНФОРМАТИКИ

(Часть 1)

 

Для студентов радиотехнических специальностей

Всех форм обучения

 

РТФ ТАГАНРОГ 2017


 

УДК 681.3´5(07.07)

 

Составитель: М.Н. Максимов

 

Методические указания к лабораторным работам по курсу

“Информатика” (Часть 1). Таганрог: Изд-во ТРТУ,

2000. 30 с.

 

Приведены методические указания к лабораторным работам

1-11 по курсу “Информатика”.

Методические указания предназначены для студентов радиотехнических специальностей всех форм обучения.

 

Библиогр.: 8 назв.

 

Рецензент А.Л. Черниховский, канд. техн. наук, доцент кафедры ТОР ТРТУ.

 

 

Максимов Михаил Николаевич


Введение

Настоящее руководство предназначено для студентов радиотехнических специальностей безотрывных форм обучения. Руководство содержит описание лабораторных работ 1-11.

Основные теоретические положения, необходимые для выполнения лабораторных работ, приведены в работах 1-11.

Общие требования к содержанию отчетов по лабораторным работам

1. Титульный лист отчета должен содержать название, цель лабораторной работы, группу и фамилию студента, выполнившую её, и фамилию преподавателя, проверившего отчет.

2. Выполненное домашнее задание.

3. Содержание этого пункта отчета определяется требованиями, приведенными в пункте "Содержание отчета" выполняемой лабораторной работы.

4. Ответы на контрольные вопросы.

 

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

Операции над основными типами данных языка С++

1. Цель работы: Изучение операций над основными типами данных в языке С++.

 

Домашнее задание

2.1 Привести в отчете диапазон значений целых и вещественных констант и соответствующих им типов данных.

2.2 Нарисовать в отчете схему подготовки исполняемой программы.

2.3 Привести в отчете таблицу приоритетов операций.

 

Лабораторное задание.

3.1 Набрать программу №1, приведенную ниже.

//Программа №1

#include "stdafx.h"

#include <iostream>

using namespace std;

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

{

cout<<"\nsizeof(int) = " << sizeof(int);

cout<<"\nsizeof(short) = " << sizeof(short);

cout<<"\nsizeof(long) = " << sizeof(long);

cout<<"\nsizeof(float) = " << sizeof(float);

cout<<"\nsizeof(double) = " << sizeof(double);

cout<<"\nsizeof(char) = " << sizeof(char);

cout<<"\nsizeof('a') = " << sizeof('a');

cout<<"\nsizeof(1) = " << sizeof(1);

cout<<"\nsizeof(1L) = " << sizeof(1L);

cout<<"\nsizeof(1U) = " << sizeof(1U);

cout<<"\nsizeof(1.) = " << sizeof(1.);

cout<<"\nsizeof(1.F) = " << sizeof(1.F);

cout<<"\nsizeof(1.L) = " << sizeof(1.L);

cout<< "\n (4<<2) = " <<(4<<2);

cout<<"\n (5>>1) = " << (5>>1);

cout<<"\n (6&5) = " << (6&5);

cout<<"\n (6|5) = " << (6|5);

cout<<"\n (3<5) = " << (3<5);

cout<<"\n (3>5) = " << (3>5);

cout<<"\n (3==5) = " << (3==5);

cout<<"\n (3!=5) = " << (3!=5);

cout<<"\n Press key to continue";

getchar();

 

 

cout<<"\n (3!=5 || 3==5) = " << (3!=5 || 3==5);

cout<<"\n (3+4>5 && 3+5 > 4 && 4+5>3) =" << (3+4>5 && 3+5 > 4 && 4+5>3);

 

int k;

cout<<"\n (k=35/4) = " << (k=35/4); // Тест

cout<<"\n (k/=1+2+2) = " << (k/=1+2+2);

cout<<"\n (k*=5-2) = " << (k*=5-2);

cout<<"\n (k%=3+2) = " << (k%=3+2);

cout<<"\n (k+=21/3) = " << (k+=21/3);

cout<<"\n (k-=6-6/2) = " << (k-=6-6/2);

cout<<"\n (k<<=2) = " << (k<<=2);

cout<<"\n (k>>=6-5) = " << (k>>=6-5);

cout<<"\n (k&=9+4) = " << (k&=9+4);

cout<<"\n (k|=8-2) = " << (k|=8-2);

getchar();

}

3.2 Отладить программу №1.

3.3 Проанализировать результаты работы программы.

3.4 Ответить на контрольные вопросы.

3.5 Написать отчет.

 

Содержание отчета.

4.1 Титульный лист. Домашнее задание

4.2 Текст программы №1 и результаты её выполнения.

4.3 Краткое пояснение против результатов выполнения каждой операции.

 

5. Контрольные вопросы.

5.1 Какие типы данных вы знаете, сколько байт занимает каждый тип данных, в каких диапазонах могут изменяются значения этих типов данных?

5.2 Поясните, что такое вещественная, целая, символьная и строковая константа. Какое максимальное целая константа может использоваться в программе на языке С++. Приведите примеры констант различного типа.

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

5.4 Расскажите об этапы подготовки исполняемой программы.

5.5 Идентификатор, правило записи идентификаторов в языке С++?

5.6 Операции, типы операций. Привести примеры операций определенных над множеством только целых типов данных.

5.7 Чем отличаются друг от друга операции & от &&, а также | от ||.

5.8 Раскройте смысл операции %, *=, +=, /=.

5.9 В этом выражении 8 операций (3+4>5 && 3+5 > 4 && 4+5>3) . Помете цифрами, в какой последовательности будут выполнятся эти 8 операций. Найдите вручную чему равно значение выражения (3+4>(5 && 3)+5 > 4 && 4+5>3). Объясните почему.

5.10 Что такое приоритеты и ассоциативность операций.

5.11 В строке программы, напротив которой написан комментарий //Тест, вместо константы 35 подставьте константу заданную вам преподавателем, и рассчитайте в ручную значение всех выражений определенных ниже.

 

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

Явное и неявное преобразование типов в языке С++

Определение, описание и вызов функций в языке С++.

 

1. Цель работы: Изучение операции преобразования типа в языке С++, а также определения, описания и вызова функции пользователем.

 

Домашнее задание

2.1 Сформулировать и записать правила преобразования типов при выполнении арифметических операций и операции присваивания. Привести примеры.

2.2 Сформулировать и записать правило передачи данных в функцию по значению через аппарат фактических и формальных параметров. Привести пример.

 

Лабораторное задание.

3.1 Набрать программы №1 и №2.

// Программа №1 Преобразование типов.

#include "stdafx.h"

#include <iostream>

#include <math.h>

using namespace std;

 

void main (){

long k = 123456789;

float g = (float)k;

cout<<"\n\n k = "<<k;

cout<<"\n g= "<<g;

k = (long)g;

cout<<"\n k = "<<k; //Объяснить результат

g = (float) 2.222222e+2;

int m = int(g);

cout<<"\n\n g = " <<g;

cout<<"\n m = "<<m;

g = (float)m;

cout<<"\n g = "<<g;

int a=1, b = 2;

double c = 1;

c = a/b*c+ a*c/b;

cout<<"\n c = "<<c; //Объяснить результат

cout<<"\n 1/2*exp(1) = "<<1./2*exp(1.); //Объяснить результат

getchar();

}

 

// Программа №2 Функции, определенные пользователем

#include "stdafx.h"

#include <iostream>

using namespace std;

 

extern double k; //Описание переменной k

void main (){

double a = 2, b = 3;//Описание, определение и инициализация переменных a и b.

k = 1.3*k/((a+b)*(a-b));

cout<< "\n k = "<<k;

getchar();

}

double k=1; //Определение переменной k

3.2 Отладить программы №1 и №2.

3.3 Модифицировать программу №2 определив функции, реализующие арифметические операции сложения (+), вычитания (-), умножения (*), деления (/). Имена функциям придумать самостоятельно. Вставить в строку программы k = 1.3*k/((a+b)*(a-b)); вместо операции и её операндов соответствующий вызов функции.

//Пример определения и вызова функции, реализующей операцию сложения +:

#include "stdafx.h"

#include <iostream>

using namespace std;

 

double sum(double a, double b); //Описание функции sum( )

extern double k;

void main (){

k = 1;

double a = 2, b = 3;

k = 1.3*k/(sum(a,b)*(a-b)); //Строка программы содержит вызов функции sum( )

cout<< "\n k = "<<k;

getchar();

}

double sum(double a, double b){ //Определение функции sum( )

return a+b;

}

double k;

3.4 Проанализировать результаты работы программ.

3.5 Написать программу №3, вычисляющую значение функции при t = 0, 0.1 и 0.4.

3.6 Ответить на контрольные вопросы.

3.7 Написать отчет.

 

Содержание отчета

4.1 Титульный лист. Домашнее задание.

4.2 Текст и результаты работы программы №1.

4.3 Текст модифицированной программы №2, с функциями, реализующими операции - , *, /.

4.4 Текст программы №3.

 

5. Контрольные вопросы

5.1 Что такое описание, определение и вызов функции (пояснить на примере функций определенных вами в лабораторном задании)? Для чего необходимо описание функции, можно ли его опустить?

5.2 Что такое формальные и фактические параметры? Поясните способ передачи данных в функцию через параметры и через глобальную переменную?

5.3 Поясните, с помощью какого оператора функция возвращает значение в точку вызова. Какой тип этого значения?

5.4 Что такое описание и определение переменной? Приведите примеры описания и определения переменных? В чем их принципиальная разница?

5.5 Что такое инициализация переменной? Чем инициализация переменной отличается от присваивания переменной значения.

5.6 Свойства переменных различного типа: объем занимаемый в памяти, диапазон значений, количество значащих цифр, множество операций, определенных над ними, область видимости и область существования.

5.7 Какие переменные называются локальными, глобальными, статическими? Приведите примеры. Может ли локальная переменная быть статической?

5.8 Приведите примеры явного и неявного преобразования типов при выполнении арифметических операций и операции присваивания. Объясните результаты работы программы №1.

5.9 Как использовать библиотечные функции? Что такое заголовочный файл, и что он содержит. Где содержится определение и описание библиотечных функций, использованных в лабораторной работе?

5.10Напишите функцию, вычисляющую модуль, и функцию, вычисляющую, аргумент комплексного числа.

 

 



2018-07-06 598 Обсуждений (0)
Лабораторная работа №2 0.00 из 5.00 0 оценок









Обсуждение в статье: Лабораторная работа №2

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас...
Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (598)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.008 сек.)