
- •Ю.Н. Тановицкий, и.М. Егоров, д.А. Савин
- •Рабочая программа
- •1 Цели и задачи курса
- •4. Рейтинговые индивидуальные задания
- •5. Контрольные работы
- •6. Балльная раскладка по дисциплине (четвертый семестр)
- •7. Самостоятельная работа студентов
- •8. Содержание курсового проекта
- •8.1.Временная и балльная раскладка этапов работы над курсовым проектом
- •9 Литература
- •9.1. Основная литература
- •Егоров и.М.Программирование: Учебно-методическое пособие (Курсовое проектирование). Томск: Томский государственный университет систем управления и радиоэлектроники, 2007. 80 с
- •9.2. Дополнительная литература
- •Лабораторная работа № 1 Изучение html
- •1 Введение
- •2 Описание языка html
- •3 Структура html документа
- •4 Программа работы
- •5 Варианты работы
- •Лабораторная работа № 2 Изучение css
- •1 Введение
- •2 Описание css
- •2 Программа работы
- •3 Варианты работы
- •Лабораторная работа № 3 Изучение dom
- •1 Введение
- •2 Описание dom
- •2 Программа работы
- •4. Программа работы
- •5. Варианты работы
- •Лабораторная работа № 5 Автоматизация формирования математических моделей электронных схем
- •1. Введение
- •2. Описание работы
- •3. Программа работы
- •4. Варианты схем
- •3. Программа работы
- •Лабораторная работа № 7 Знакомство со средой программирования Microsoft
- •1 Введение
- •2 Описание работы
- •3. Программа работы
- •5. Варианты работы
- •Построение графика переходного процесса в среде Matcad методом узловых потенциалов.
- •1. Введение
- •2. Описание работы
- •3. Программа работы
- •Лабораторная работа № 8
- •1 Введение
- •2 Описание языка javascript
- •3 Синтаксис языка javascript
- •4. Программа работы
- •5. Варианты работы
Какую работу нужно написать?
3. Программа работы
Используя одностобцовые матрицы из предыдущей работы, решите уравнение (1) и найдите комплексные узловые потенциалы.
Из полученного вектора потенциалов возьмите тот потенциал, который соответствует выходу вашей схемы. Найдите модуль - Am и фазу - выходного узлового потенциала.
Постройте графики амплитуды и фазы выходного сигнала (при единичном входном), используйте логарифмические оси по частоте и по амплитуде. Такие графики называются «Амплитудно-частотная характеристика» (АЧХ) и Фазо-частотная характеристика (ФЧХ) схемы соответственно. Выведите амплитуду в децибелах – y=20*lg(x), здесь x –входной сигнал, y-значение в децибелах.
Соберите и сохраните схему из предыдущей работы в программе ASIMEC, постройте с ее помощью амплитудную и частотные характеристики, используя плоттер Боде. Для демонстрации его работы запустите c6_tac.cir из каталога DEMO программы.
Добейтесь совпадения полученных с помощью MatCad и ASIMEC характеристик.
Лабораторная работа № 7 Знакомство со средой программирования Microsoft
VisualStudio и особенности работы консольных приложений на языке С++ в ней.
1 Введение
Целью работы является знакомство с базовыми принципами создания консольных приложений с использованием языка программирования C++ и оболочки Microsoft VisualStudio.
Консольное приложение – это приложение, запускаемое в отдельном окне с возможность ввода и вывода только текстовой информации. В таком приложении вывод графической информации, а так же управление приложением с помощью «мышки» невозможно.
2 Описание работы
Создание проекта консольного приложения осуществляется с помощью меню Файл-Создать-Новый проект. В открвшемся окне необходимо выбрать Консольное приложение Win32, и ввести имя проекта. Далее, оставив опции по-умолчанию, мастер создаст новый проект консольного приложения, содержащий минимально необходимый код для запуска.
Все операторы языка должны быть помещены внутри функций – это может быть как функция main (основная функция программы), так и в любая другая функция, задаваемая пользователем. Пример простейшей программы:
// Подключение файла, включающего заголовки необходимых
// библиотек
#include "stdafx.h"
// Использовать пространство имен std
using namespace std;
// Объявление оснвной функции
int _tmain(int argc, _TCHAR* argv[])
// Начало функции
{
// Вывод текста на экран
cout << "Hello, World!\n";
// Выход из программы с кодом ошибки 0
return 0;
// Конец функции
}
Содержимое файла с заголовками библиотек stdafx.h:
// Директива препроцессора, запрещающая подключать
// файл дважды
#pragma once
// Список заголовочных файлов подключаемых библиотек
#include <iostream>
#include <tchar.h>
#include <conio.h>
Данная программа выводит на экран фразу «Hello, World!» и закрывает окно приложения. Для того чтобы успеть прочитать фразу, а так же, чтобы окно закрывалось только после нажатия на клавишу, необходимо добавить следующую строку перед оператором выхода из программы:
// Ожидание нажатия клавиши
getch();
// Выход из программы с кодом ошибки 0
return 0;
Теперь программа остановится до тех пор, пока не будет нажата любая клавиша.
В дальнейшем, весь новый код программы мы будем помещать между оператором вывода на экран и оператора ожидания нажатия на клавишу.
Осуществление ввода-вывода:
// Объявление целочисленной переменной
int i;
// Вывод приглашения на ввод числа
cout << "Please, enter number: ";
// Считывание числа и запись в переменную i
cin >> i;
// Вывод текста и значения переменной i.
// В конце строки вывести символ конца строки
cout << "Number: " << i << endl;
Здесь выводится надпись приглашение на ввод числа, после чего программа ожидает ввода целого числа. Как только ввод будет осуществлен, программа выведет введенное значение.
Пример организации цикла:
// Объявление целочисленной переменной
int s = 0;
// Организация цикла от 1 до i, с шагом 1
for(int j = 1; j <= i; j++)
// Начало цикла
{
// Прибавление к значению переменной s значения переменной j
s += j;
// Конец цикла
}
// Вывод суммы
cout << "Summ is: " << s << endl;
В качестве количества шагов используется значение, введенное в предыдущем примере. Осуществляется расчет суммы ряда чисел от 1 до i с выводом результата.
Работа с перемеными с плавающей точкой:
// Объявление переменной с плавающей точкой
float step;
// Вывод приглашения на ввод шага
cout << "Please, enter step (0,1]: ";
// Ввод значения с плавающей точкой
cin >> step;
// Организация цикла для проверки правильности ввода
// (значение должно быть больше 0 и меньше или равно 1)
while (step <= 0 || step > 1)
// Начало цикла
{
// Вывод сообщения о некорректности ввода
cout << "Incorrect step, try again: ";
// Ввод значения
cin >> step;
// Конец цикла
}
// Обнуление переменной
s = 0;
// Организация цикла от 0 до 1, с шагом равным step
for(float k = 0; k < 1; k += step)
// Начало цикла
{
// Увеличение значения переменной s на 1
s++;
// Конец цикла
}
// Вывод количества шагов на интервале
cout << "Number of steps on interval [0,1]: " << s << endl;
Вводится значение переменной с плавающей точкой в диапазоне от 0 до 1 (пример ввода: 0.1). После этого в цикле осуществляетяс проверка на корректность ввода. До тех пор, пока введеное значение лежит за пределами диапазона, предлагается ввести значение еще раз. После проверки ввода, организован цикл, в котором переменная k изменяет свои значения в интервале от 0 до 1 с шагом равным step. При этом на каждом шаге осуществляется инкремент значения переменной s. После окончания цикла программа выводит посчитаное количество шагов на интервале. Следует учесть, что программа расчитывает количество не полных шагов (т.е. последний шаг может быть не полным).