zadach436.PAS

{* Задача 436 *}

Unit ZADACH436;
Interface
Implementation
Begin
 writeln('

Определите концентрацию электронов в кремнии при 300К содержащем 2×1011см–3 атомов донорной примеси (Nd) и 1×1011 см–3 атомов акцепторной примеси (Nа), используя выражение

'
);
End.

Program zadach436;

Uses zadach436.pas; {* Эту строку можно удалить *}
Uses crt; {* Вызов внешних функций *}
Const {* Константы *}
  n1 = 1.45e10; {Собственная концентрация носителей, [см-3]}
Var {Концентрация атомов акцепторной примеси, [см-3]}
  Nd : extended; {Концентрация атомов донорной примеси, [см-3]}
  n  : Array [1..10] Of real; { Концентрация электронов в кремнии, [см-3]}
  i  : integer; { Индексная переменная}
Begin
  Clrscr; {* Очистка экрана *}
  Textcolor(green); {* Установить  цвет текста *}
   write ('   ' ,   '‚Введите значение концентрации акцепторной примеси Na= ');
  readln (Na);
  Textcolor (yellow); {* Установить  цвет текста *}
  Writeln ('Концентрация атомов донорной примеси [см-3] Концентрация носителей  в кремнии [см-3]');
  Writeln ('');
  For i := 1 To 10 Do {* Цикл для i => [1 .. 10] *}
  Begin
    Nd[i] := 2e11 * i;
    n[i] := ((Nd[i] - Na) / 2 + sqrt((sqr((Nd[i] - Na) / 2) + sqr(n1))));
    textcolor (white); {* Установить  цвет текста *}
    Writeln ('                            ', nd[i] : 3      ,   '                              ', n[i] : 3);
  End;
  readln; {* Ждем подтверждения пользователя *}
End.