Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОПИСАНИЕ.doc
Скачиваний:
7
Добавлен:
10.02.2016
Размер:
120.32 Кб
Скачать

1.4 Используемые технические средства

Программа, откомпилированная в байт-коды может выполняться на любом персональном компьютере, имеющем систему, реализующую JVM. При этом не важен ни тип процессора, ни архитектура компьютера. Кроме реализации JVM для выполнения байт-кодов на компьютере еще нужно иметь набор функций, вызываемых из байт-кодов и динамически компонующихся с байт-кодами. Этот набор оформляется в виде библиотеки классов Java, состоящей из одного или нескольких пакетов - JDK или новая версия Java 2 SDK, сокращенно J2SDK Файл Java 2 SDK SE, vl.3, в упакованном виде имеет размер около 30 Мбайт, и еще файл с упакованной документацией размером 23 Мбайта. Все это распаковывается в 210 Мбайт дискового пространства. Поэтому данная версия требует процессор Pentium 166 и выше и не менее 32 Мбайт оперативной памяти. J2SDK содержит компилятор javac из исходного текста в байт-коды; интерпретатор java, содержащий реализацию JVM; библиотеку классов Java API (Application Programming Interface) и др. важные программы.

1.5 Входные данные программы

В программе весь ввод осуществляется с клавиатуры. В основной программе и в процедуре Calc. В основной программе вводятся:

m- количество интервалов разбиения интервала сопротивлений;

В процедуре Сalc вводятся:

  • емкость конденсатора C(нФ),

  • индуктивность катушки L(мГн),

  • диапазон изменения сопротивлений (R0 – RK).

1.6 Выходная информация программы

Программа вычисляет и выдает в текстовом и графическом виде зависимости характеристических токов, напряжений на конденсаторе от времени и сопротивлений.

В приложении приведена таблица зависимости параметров к.к. от времени t, которую программа An_kurs выводит в текстовый файл rezult. Как видно из приложения таблица состоит из n колонок.

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

Выводы

В данной курсовой работе рассчитаны зависимости параметров к.к. (токов, напряжений ) от времени t. Разработанная программа позволяет вычислять и выдавать в графическом и табличном виде указанные зависимости. Это существенно облегчает расчеты, поскольку не нужно каждый раз проводить расчеты вручную, а просто запускается готовая программа, в которой этот процесс автоматизирован и вводятся нужные параметры.

ЛИТЕРАТУРА

  1. Эккель Б. Философия Java. :BHV., СПб – 2001. 850с.

  2. Морган М. Java 2. Руководство разработчика. – М.: Изд. дом «Вильямс», 2000.

  3. Нотон П., Шилдт Г. Полный справочник по Java. – Киев: Диалектика, 1997.

  4. Флэнэген Д. Java in a Nutshell. Полное руководство. – Киев: BHV, 1998

  5. Роганов Е.А. Основи информатики и программирования: Учебное пособие – М.: МГИУ, 2001. – 315 с.

ПРИЛОЖЕНИЕ А. ЛИСТИНГ ПРОГРАММЫ

import java.lang.Math;

import java.text.*;

import java.io.*;

import java.awt.*;

import java.awt.event.*;

public class Kurs extends Component{

static int n;

static double [] Z, alfa, betta, w;

static double C=0.3E-6, L=1.5E-3,w1,w2;

static void Calc()

{

double a;

w[0]=w1;

double h=(w2-w1)/(n-1);

for (int i=1;i<n;i++)

w[i]=w[i-1]+h;

for (int i=0;i<n;i++){

a=1-w[i]*w[i]*L*C;

Z[i]=Math.sqrt(Math.abs(2*L/C-w[i]*w[i]*L*L));

alfa[i]=Math.abs(a)>1?Math.log(Math.abs(a)+Math.sqrt(a*a-1)):0;

if (a>=1) betta[i]=0; else

if (a<=-1) betta[i]=Math.PI; else

betta[i]=Math.acos(a);

}

for (int i=0;i<n;i++){

Z[i]*=1e-2;

w[i]*=1e-3;}

}

public static String number(double n, int n1, int n2)

{ DecimalFormatSymbols fs = new DecimalFormatSymbols();

fs.setDecimalSeparator('.');

String s="0.";

for (int i=1; i<=n2; i++) s+="0";

DecimalFormat df = new DecimalFormat(s, fs);

String s1 = df.format(n);

String s2="";

for (int i = s1.length(); i < n1; i++) s2+=" ";

return s2+s1;

}

//Главный метод

public static void main(String[] args) throws Exception {

InputStreamReader is = new InputStreamReader(System.in);

BufferedReader st = new BufferedReader(is);

System.out.println(" Введите w1, кГц->");

String numberStr = st.readLine();

w1=Double.valueOf(numberStr).doubleValue();

w1*=1e3;

System.out.println(" Введите w2, кГц->");

numberStr = st.readLine();

w2=Double.valueOf(numberStr).doubleValue();

w2*=1e3;

System.out.println(" Число разбиений по частоте->");

numberStr = st.readLine();

n=Integer.valueOf(numberStr).intValue();

w=new double[n];

Z=new double[n];

alfa=new double[n];

betta=new double[n];

Calc();

Table();

Frame f = new Frame("График зависимости Z,alfa,betta от частоты");

f.setSize(400, 300);

f.add(new Kurs());

f.show();

f.addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {

System.exit(0);

}});}}