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

Страницы работы

12 страниц (Word-файл)

Содержание работы

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

Разработка программ  с ветвлениями

Студенты                   Кохно Константин Сергеевич

Группа                       РМС7-71

Дата выполнения     16.03.2008

Преподаватель          Усольцев Н.В.

Отметка о защите    

Задание № 3.1

Математическая функция:

Понятно что на входе х (double) а на выходе – значение функции от этого аргумента y(double)

Код программы:

#include <iostream.h>

#include <conio.h>

#include <math.h>

void main()

{

// Обьявление переменных

double x;

double y;

// Ввод данных

clrscr();

cout<<"Введите Х ";

cin>>x;

cout<<endl;

// Просчёт

if (x<-1) y=sin(x);

if ((-1<=x)&&(x<=2)) y=x*x;

if (x>2) y=cos(x);

// Вывод результата 

cout<<"Ответ: "<<y<<endl;

getch();

}

Пробные результаты:

1)

Введите х -3.14

Ответ: -0.00159265

2)

Введите х 0

Ответ: 0

3)

Введите х 3.14

Ответ: -0.999999

Вывод:

Практические результаты работы программы совпадают с ожидаемыми

Задание № 7:

Разработать программу, присваивающую трем переменным ,  и  значения параметров одного их трех полупроводниковых материалов: германия, кремния или арсенида галлия, в зависимости от введенного ключа выбора G, S или A.

Материал

, эВ

, см-3

германий

16.0

0.67

2.4.1013

кремний

11.9

1.12

1.45.1010

арсенид галлия

13.1

1.43

1.79.106

Затем должны выполняться вычисления величин

;

, где         q = 1.60.10-19 Кл – заряд электрона;

e0 = 8.85.10-14 Ф/см – диэлектрическая постоянная;

k = 8.62.10-5 эВ/К – постоянная Больцмана.

В конце работы программа должна выводить значения величин и на дисплей.

Расчет выполняется для значения температуры, заданного преподавателем.

Если пользователь неправильно ввел значения ключа, переменным ,  и  должны быть присвоены нулевые значения, вычисления и  не выполняться, а в качестве результата выводиться соответствующее сообщение.

На входе:

(char) mat-материал

(double) ni0,ni,Eg,T,T0,LD,q,e0,k,e

На выходе:

(double) ni, LD

Код программы:

#include <iostream.h>

#include <conio.h>

#include <math.h>

void main()

{

// Обьявление переменных

double ni0,ni,Eg,T,T0,LD,q,e0,k,e;

char mat;

// Ввод констант

q=1.6E-20;

e0=8.85E-14;

k=8.62E-5;

T0=300;

// Ввод входных данных

clrscr();

cout<<”Введите материал (G,S,A): ";

cin>>mat;

cout<<endl;

cout<<" T: ";

cin>>T;

cout<<endl;

// Подставляем значения констант для определённого мтериала

switch (mat)

{

case 'G':

e=16;

Eg=0.67;

ni0=2.4E+13;

break;

case 'S':

e=11.9;

Eg=1.12;

ni0=1.45E+10;

break;

case 'A':

e=13.1;

Eg=1.43;

ni0=1.79E+6;

break;

}

// Просчёт

ni=ni0*exp(Eg*(T-T0)/(2*k*T*T0));

LD=sqrt(e*e0*k*T/(q*ni));

// Вывод ответа 

cout<<" ni="<<ni<<endl;

cout<<"       LD="<<LD<<endl;

getch();

}

Пример работы программы:

1)

Введите материал (G,S,A): G

Введите T: 120

Ответ: ni=87336.2

LD=3.23757

2)

Введите материал (G,S,A): S

Введите T: 10

Ответ: ni=2.66549e-263

LD=4.61371e+133

3)

Введите материал (G,S,A): A

Введите T: 500

Ответ: ni=1.13751e+11

LD=0.00523972

Вывод:

Программа работает без ошибок

Задание 5:

Разработать программу для проверки, попадает ли точка с заданными на плоскости координатами x и y внутрь пересекающихся окружностей с центрами в точках , и , и радиусами  и . Программа должна выдавать в виде результата сообщение, в какую область попала точка:

-  не принадлежащую ни одному из кругов;

-  принадлежащую только первому кругу;

-  принадлежащую только второму кругу;

-  принадлежащую и первому, и второму кругу.

На входе:

double x,y,x1,y1,x2,y2,R1,R2 – радиусы окружностей и координаты точки

На выходе:

Текст ответа

#include <iostream.h>

#include <conio.h>

#include <math.h>

void main()

{

//Обьявляем переменные

int otv,id1,id2;

double x,y,x1,y1,x2,y2,R1,R2;

// Ввод данных

clrscr();

cout<<"‚X1: ";

cin>>x1;

cout<<endl;

cout<<" Y1: ";

cin>>y1;

cout<<endl;

cout<<" X2: ";

Похожие материалы

Информация о работе

Предмет:
Информатика
Тип:
Отчеты по лабораторным работам
Размер файла:
90 Kb
Скачали:
0