Анализ и исполнение программы Murka-2007 раздела if_else (часть Ветвления). Разработка программы для вычисления корней кубического уравнения, страница 3

x = 10

y = 20

Точка не принадлежит ни одному из кругов

6.  Проанализировать и исполнить программы Murka раздела switch (часть Ветвления). Освоить синтаксис оператора switch и особенности его использования.

Множественный выбор в языке С++ осуществляется с помощью оператора switch(). В качестве селектора выбора используется переменная символьного или целого типа. Возможные значения при выборе селектора перечисляются в блоках case ‘’. После каждого блока необходимо ставить оператор break.Он прервет работу оператора множественного выбора. В случае, если он не стоит, выбор будет сделан по последнему блоку, после которого стоит оператор break. Если не одно из заданных значений селектора не соответствует ни одному из блоков case, выбор будет сделан по оператору default, при этом после последнего блока case обязательно должен стоять оператор break. Каждый из блоков может содержать любое количество других операторов, не заключенных в фигурные скобки.

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 эВ/К – постоянная Больцмана.

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

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

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

Структура входных и выходных данных следующая:

x – ключ, по которому определяется полупроводниковый материал. n_i и L_D -  вещественные значения, рассчитанные по заданным формулам.

Блок-схема программы

Текст программы:

#include <iostream.h>

#include <conio.h>

#include <math.h>

void main()

{

double T0,T;

double eps,E_g,n_i0;

double n_i,L_D;

char key;

T0=300;

T=350;

const double q=1.6E-19;

const double eps0=8.85E-14;

const double k=8.62E-5;

clrscr();

cout<<"Введите полупроводниковый материал:"<<endl;

cout<<"G - германий"<<endl;

cout<<"S - кремний"<<endl;

cout<<"A - арсенид галлия"<<endl;

cin>>key;

cout<<endl;

switch(key)

{

case 'G':

eps=16;

E_g=0.67;

n_i0=2.4E+13;

break;

case 'S':

eps=11.9;

E_g=1.12;

n_i0=1.45E+10;

break;

case 'A':

eps=13.1;

E_g=1.43;

n_i0=1.79E+6;

break;

default:

cout<<"Такого материала нет!"<<endl;

eps=0;

E_g=0;

n_i0=0;

}

n_i=n_i0*exp(E_g*(T-T0)/2*k*T*T0);

L_D=sqrt(eps*eps0*k*T/q*n_i);

cout<<"n_i = "<<n_i<<endl;

cout<<"L_D = "<<L_D<<endl;

cout<<"eps = "<<eps<<endl;

cout<<"E_g = "<<E_g<<endl;

cout<<"n_i0 = "<<n_i0<<endl;