Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Результаты работы программы. Результаты работы программы №3 аналогичны результатам программы №2

Читайте также:
  1. Fidelio Front Office - система автоматизации работы службы приема и размещения гостей.
  2. FILTER – задает один из трех режимов работы ручкам FREQ и RESON
  3. II. Методика работы
  4. II. Методика работы.
  5. II. Методика работы.
  6. II. Методика работы.
  7. II. Методика работы.

Результаты работы программы №3 аналогичны результатам программы №2


Задание №4

Проанализировать структуру класса Double составить программу тестирования всех констант, включенных в класс и методов, принадлежащих этому классу.

 

Блок схема


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

import java.lang.Double;

public class q4 {

public static void main(String args[]){

/*Конструкторы создают объекты типа Double.Можно создавать в явном виде и неявном виде*/

Double d1= new Double(3.15345);

Double d2= new Double(315345E-5);

System. out. println(d1+"="+d2+"->"+d1.equals(d2));

/*В классе Double имеются константы: бесконечность, неопределенность.

А также методы их проверки.*/

Double d3=Double. POSITIVE_INFINITY;

Double d4=Double. NaN;

System. out. println(d3+":"+d3.isInfinite()+","+d3.isNaN());

System. out. println(d4+":"+d4.isInfinite()+","+d4.isNaN());

System. out. println("d3 Infinite?"+Double. isInfinite (d3));

System. out. println("d4 NaN?"+Double. isNaN (d4));

d3=Double. NEGATIVE_INFINITY;

System. out. println(d3);

System. out. println("d3 == Infinity? "+(d3 == Double. POSITIVE_INFINITY));

Double d5= new Double(-3);

//Метод представляющий объект в виде строки в 16-ной системе исчисления

System. out. println("d5="+Double. toHexString (d5));

try {

//Метод перевода из строки в Double

String g= new String("1234");

Double d6=Double. parseDouble (g);

System. out. println("d6="+d6);

}

catch (Exception e){}

//Методы сравнения

System. out. println("d5>d1? "+d5.compareTo(d1));

System. out. println("d1=d1?"+d1.compareTo(d1));

System. out. println("d1>d5 "+d1.compareTo(d5));

System. out. println("d5>d1 "+Double. compare (d5, d1));

//Константы максимума и минимума

d1=Double. MAX_VALUE;

System. out. println("Max_d1="+d1);

d1=Double. MIN_VALUE;

System. out. println("Min_d1="+d1);

//Методы перевода в другие типы данных

long d7=Double. doubleToLongBits (d2);

System. out. println("d7="+d7);

System. out. println("d2 в шестнадцатеричном представлении:"+Double. toHexString (d2));

String s=Double. toString (d2);

System. out. println("d2 в представлении ASCII cod:"+s);

 

}

}

Результаты работы программы

3.15345=3.15345->true

Infinity:true,false

NaN:false,true

d3 Infinite?true

d4 NaN?true

-Infinity

d3 == Infinity? false

d5=-0x1.8p1

d6=1234.0

d5>d1? -1

d1=d1?0

d1>d5 1

d5>d1 -1

Max_d1=1.7976931348623157E308

Min_d1=4.9E-324

d7=4614283356922483153

d2 в шестнадцатеричном представлении:0x1.93a43fe5c91d1p1

d2 в представлении ASCII cod:3.15345

 

Задание №5

Условие

На основании задания №2 исследовать работу исключительных ситуаций. Создать программу обработки следующих ситуаций:

1) Исключительную ситуацию если введено имя мэра, которого нет в списке допустимых мэров

2) Исключительную ситуацию если количество голосов превышает допустимое кол-во

Блок схема

 

 


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

package package1;

import java.io.IOException;

public class q5 {

static private char ch;

static private int i, j, c, r, key =0, kol_j [], kol_i;

private int kol[][],kol_m[],kol_max=10,l;

private String s;

private String name_city[];

private String name_mayor[][];

static public int n;

static private String list [];

private int amount=5;

q5(){

list = new String[amount];

list [0]="qqq";

list [1]="www";

list [2]="eee";

list [3]="rrr";

list [4]="ttt";

}

//Метод обработки исключительной ситуации, если мэра нет в списке

private void listexception() throws MyException{

StringBuffer str;

System. out. println("(1)Хотите поменять имя и продолжить ввод или (2)закончить ввод");

try {

str= new StringBuffer();

while ((ch = (char) System. in. read())!= '\n')

str.append(ch);

l=Integer. parseInt (str.toString());}

catch (IOException e){}

switch (l){

case '1':{ try { key =0;str= new StringBuffer();

System. out. println("Введите имя мэра");

while ((ch = (char) System. in. read())!= '\n')

str.append(ch);

name_mayor[ i ][ j ] = new String(str.toString());

int l=0;

for (c =0; c <amount; c ++){

if (name_mayor[ i ][ j ].equals(list [ c ]))

{

l++;

break;

}

}

if (l==0){

throw new ListException(name_mayor[ i ][ j ]);

}

break;}

catch (IOException e){}

catch (MyException List){

System. out. println("caught "+List);

listexception();

}

}

case '2': key =1; kol_j [ i ]= j +1; break;

}

 

 

}

//Метод обработки исключительной ситуации, если кол-во голосов превышает допустимое количество

private void kolexception() throws MyException{

StringBuffer str;

System. out. println("(1)Хотите поменять кол-во голосов и продолжить ввод или (2)закончить ввод");

try {

str= new StringBuffer();

while ((ch = (char) System. in. read())!= '\n')

str.append(ch);

l=Integer. parseInt (str.toString());}

catch (IOException e){}

switch (l){

case '1':{

try {

key =0;str = new StringBuffer();

System. out. println("Кол-во голосов:");

while ((ch = (char) System. in. read())!= '\n')

if (ch!=13)str.append(ch);

kol[ i ][ j ] = Integer. parseInt (str.toString());

if (kol[ i ][ j ]>kol_max){

throw new KolException(name_mayor[ i ][ j ]);

}

break;}

catch (IOException e){}

catch (MyException List){

System. out. println("caught "+List);

kolexception();

}

}

case '2': key =1; kol_j [ i ]= j +1; break;

}

 

 

}

//Метод ввода таблицы

public void Enter() throws MyException,ListException,KolException{

Try

{

name_city = new String[ n ];

name_mayor= new String[ n ][];

kol= new int [ n ][];

kol_m= new int [ n ];

StringBuffer str = new StringBuffer();

System. out. println("Введите имя города");

while ((ch = (char) System. in. read())!= '\n')

str.append(ch);

name_city[ i ] = new String(str.toString());

System. out. print("Введите кол-во мэров");

str = new StringBuffer();

while ((ch = (char) System. in. read())!= '\n')

if (ch!=13)str.append(ch);

kol_m[ i ]=Integer. parseInt (str.toString());

name_mayor[ i ]= new String[kol_m[ i ]];

kol[ i ]= new int [kol_m[ i ]];

for (j =0; j <kol_m[ i ]; j ++)

{

str= new StringBuffer();

System. out. println("Введите имя мэра");

while ((ch = (char) System. in. read())!= '\n')

str.append(ch);

name_mayor[ i ][ j ] = new String(str.toString());

Try

{

int l=0;

for (c =0; c <amount; c ++)

{

if (name_mayor[ i ][ j ].equals(list [ c ]))

{

l++;

break;

}

}

if (l==0)

{

throw new ListException(name_mayor[ i ][ j ]);

}

}

catch (MyException List){

System. out. println("caught "+List);

listexception();}

if (key ==1)

break;

str = new StringBuffer();

System. out. println("Кол-во голосов:");

while ((ch = (char) System. in. read())!= '\n')

if (ch!=13)str.append(ch);

kol[ i ][ j ] = Integer. parseInt (str.toString());

Try

{

if (kol[ i ][ j ]>kol_max)

{

throw new KolException(name_mayor[ i ][ j ]); }

}

catch (MyException List){

System. out. println("caught "+List);

kolexception();}

}

}

catch (IOException e){}

}

//Метод распечатки таблицы

public void Print(int a){

for (j =0; j <kol_m[ i ]- kol_j [ i ]; j ++){

System. out. print(name_city[ i ]+" "+name_mayor[ i ][ j ]+" "+kol[ i ][ j ]+"\n");

}

}

public void Print(){

System. out. print(name_city[ i ]+" "+name_mayor[ i ][0]+" "+kol[ i ][0]+"\n");

}

//Метод обработки

public void Processing(){

for (c =0; c <kol_m[ i ]-1- kol_j [ i ]; c ++){

for (j =0; j <kol_m[ i ]-1- kol_j [ i ]; j ++){

if (kol[ i ][ j ]<kol[ i ][ j +1])

{

r =kol[ i ][ j +1];

kol[ i ][ j +1]=kol[ i ][ j ];

kol[ i ][ j ]= r;

s=name_mayor[ i ][ j +1];

name_mayor[ i ][ j +1]=name_mayor[ i ][ j ];

name_mayor[ i ][ j ]=s;

}

}

}

}

public static void main(String[] args){

try {

StringBuffer str = new StringBuffer();

System. out. print("Введите кол-во строк в таблице");

while ((ch = (char) System. in. read())!= '\n')

if (ch!=13)str.append(ch);

n = Integer. parseInt (str.toString());

System. out. println("n=" + n);

} catch (IOException e){}

kol_j = new int [ n ];

q5 A[]= new q5[ n ];

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

try {

A[ i ]= new q5();

A[ i ].Enter();

} catch (MyException List){

if (key!=0){

kol_i = i +1;

break;}

}

}

System. out. println("Исходные данные:");

System. out. print("Город Мэр Кол-во голосов\n");

for (i =0; i < n - kol_i; i ++)

A[ i ].Print(1);

for (i =0; i < n - kol_i; i ++)

A[ i ].Processing();

System. out. print("Ответ\n");

System. out. print("Город Мэр Кол-во голосов\n");

for (i =0; i < n - kol_i; i ++)

A[ i ].Print();

}

}
Результаты работы программы

Введите кол-во строк в таблице1

n=1

Введите имя города

qwe

Введите кол-во мэров1

Введите имя мэра

qwe

caught ListException(qwe

) нет такого мэра

(1)Хотите поменять имя и продолжить ввод или (2)закончить ввод

Введите имя мэра

qqq

Кол-во голосов:

caught KolException(qqq

) возможно фальсификация голосов

(1)Хотите поменять кол-во голосов и продолжить ввод или (2)закончить ввод

Кол-во голосов:

Исходные данные:

Город Мэр Кол-во голосов

qwe qqq 1

Ответ

Город Мэр Кол-во голосов

qwe qqq 1

 


Задание №6

Проанализировать структуру класса HashTable составить программу тестирования всех констант, включенных в класс и методов, принадлежащих этому классу. При исследовании класса в качестве объектов использовать объекты из задания №3.

Блок схема


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

import java.io.IOException;

import java.util.*;

public class vektor {

static private char ch;

private int j;

private int kol[],kol_m;

private String name_city;

private String name_mayor[];

static private int key, i, l;

public void Enter(){

Try

{

key =0;

name_city = new String();

StringBuffer str = new StringBuffer();

System. out. println("Введите имя города");

while ((ch = (char) System. in. read())!= '\n')

str.append(ch);

name_city = new String(str.toString());

System. out. print("Введите кол-во мэров");

str = new StringBuffer();

while ((ch = (char) System. in. read())!= '\n')

if (ch!=13)str.append(ch);

kol_m=Integer. parseInt (str.toString());

name_mayor= new String[kol_m];

kol= new int [kol_m];

for (j=0;j<kol_m;j++)

{

str= new StringBuffer();

System. out. println("Введите имя мэра");

while ((ch = (char) System. in. read())!= '\n')

str.append(ch);

name_mayor[j] = new String(str.toString());

str = new StringBuffer();

System. out. println("Кол-во голосов:");

while ((ch = (char) System. in. read())!= '\n')

if (ch!=13)str.append(ch);

kol[j] = Integer. parseInt (str.toString());

}

}

catch (IOException e){}

}

public void Print(int a){

for (j=0;j<kol_m;j++){

System. out. print(name_city+" "+name_mayor[j]+" "+kol[j]);

}

}

public static void main(String[] args){

StringBuffer str= new StringBuffer();

key =0;

Collection<vektor> coll= new ArrayList<vektor>();

Vector<vektor> date= new Vector<vektor>(10,5);

for (;;){

vektor A= new vektor();

try {

A.Enter();

boolean k=coll.add(A);

System. out. println("Добавился элемент в коллекцию?"+k);

boolean n =date.add(A);

System. out. println("Добавился элемент?"+k);

System. out. println("Ввести город?Да(1)/Нет(2)");

str= new StringBuffer();

try {

while ((ch = (char) System. in. read())!= '\n')

if (ch!=13)str.append(ch);

l = Integer. parseInt (str.toString());

}

catch (IOException e){};

switch (l){

case 2: key =1; break;

case 1: key =0; break;

}

} catch (Exception e){}

if (key!=0)

break;

}

System. out. println("Первый элемент вектора");

System. out. print("Город Мэр Кол-во голосов\n");

vektor D=(vektor)date.firstElement();

D.Print(1);

System. out. println("Последний элемент вектора");

System. out. print("Город Мэр Кол-во голосов\n");

vektor C=(vektor)date.lastElement();

C.Print(1);

Vector date2= new Vector(coll);

System. out. println("Исходные данные:");

System. out. print("Город Мэр Кол-во голосов\n");

for (i =0; i <date.size(); i ++){

vektor B=(vektor)date.get(i);

B.Print(1);}

System. out. println("Исходные данные:");

System. out. print("Город Мэр Кол-во голосов\n");

for (i =0; i <date2.size(); i ++){

vektor B=(vektor)date2.get(i);

B.Print(1);}

boolean k=date.addAll(coll);

System. out. println("Добавилась коллекция в вектор?"+k);

System. out. print("Город Мэр Кол-во голосов\n");

for (i =0; i <date.size(); i ++){

vektor B=(vektor)date.get(i);

B.Print(1);

}

vektor A= new vektor();

A.Enter();

date.add(2, A);

k=date.contains(A);

System. out. println("Содержит вектор date объект A"+k);

System. out. print("Город Мэр Кол-во голосов\n");

for (i =0; i <date.size(); i ++){

vektor B=(vektor)date.get(i);

B.Print(1);}

boolean m=date.addAll(2, coll);

System. out. println("Добавилась коллекция в вектор?"+m);

System. out. print("Город Мэр Кол-во голосов\n");

for (i =0; i <date.size(); i ++){

vektor B=(vektor)date.get(i);

B.Print(1);}

int g=date.capacity();

System. out. println("Объем"+g);

date.addElement(A);

k=date.contains(A);

System. out. println("Cодержится элемент в векторе?"+k);

k=date.containsAll(coll);

System. out. println("Cодержится коллекция в векторе?"+k);

g=date.capacity();

System. out. println("Объем"+g);

date.ensureCapacity(50);

g=date.capacity();

System. out. println("Объем"+g);

Vector<vektor> date3= new Vector<vektor>();

date3= (Vector)date.clone();

System. out. print("Город Мэр Кол-во голосов\n");

for (i =0; i <date3.size(); i ++){

vektor B=(vektor)date3.get(i);

B.Print(1);}

vektor[] obj= new vektor[date.size()];

date.copyInto(obj);

System. out. print("Город Мэр Кол-во голосов\n");

for (i =0; i <date.size(); i ++){

obj[ i ].Print(1);}

k=date.equals(A);

System. out. println("Cодержится элемент в векторе?"+k);

g=date.hashCode();

System. out. println("Хэш код вектора"+g);

k=date.isEmpty();

System. out. println("Пустой вектор?"+k);

date3.clear();

k=date3.isEmpty();

System. out. println("Очистелся вектор?"+k);

vektor F=(vektor)date.remove(1);

System. out. print("Город Мэр Кол-во голосов\n");

F.Print(1);

k=date.remove(A);

System. out. println("Удалился объект"+A.toString()+"?"+k);

k= date2.removeAll(coll);

System. out. println("Удалилась колекция?"+k);

date.add(A);

k=date.retainAll(coll);

System. out. println("Удалились все элементы кроме коллекции?"+k);

System. out. println("Элементы в коллекции");

System. out. print("Город Мэр Кол-во голосов\n");

Iterator it=coll.iterator();

while (it.hasNext()){

vektor E=(vektor)it.next();

E.Print(1);

}

System. out. println("Элементы в векторе");

System. out. print("Город Мэр Кол-во голосов\n");

for (i =0; i <date.size(); i ++){

vektor B=(vektor)date.get(i);

B.Print(1);

}

}

}


Дата добавления: 2015-10-29; просмотров: 63 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Результаты работы программы| Результаты работы программы

mybiblioteka.su - 2015-2024 год. (0.073 сек.)