Назад | Начало урока | Вперед
Содержание

Глава 4

Задача 4.8 "Средний возраст. "

В молодежный клуб ходят 24 ребенка, которые распределены по четырем звеньям. Возраст детей от 7 до 11 лет. Напишите программу, которая считывает возраст детей в каждом звене, определяет средний возраст для каждого звена группы из 24 детей, а так же для группы в целом.

Решение

Для решения задачи потребовалось совсем не много кода.
Для правильного чтения файла пришлось использовать преобразование строки в число:

String nameChild = fin.readLine();
int ageChild = (int) Double.valueOf(fin.readLine()).doubleValue();

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



import java.io.*;
import javagently.*;

class AverangeAge {

AverangeAge() throws IOException {
Stream in = new Stream(System.in);
// default the file to the keyboard
Stream fin = new Stream(System.in); try {
fin = Filer.open("data.txt");
}
catch (FileNotFoundException e) {
System.out.println("Five tries up");
System.out.println("Connecting to keyboard by default");
}


System.out.println();
System.out.println(" AverangeAge ");
System.out.println("============================");

// Child ch[] = new Child("David Backham",11);

int m = 6;
Child ch[] = new Child[m];

int test = 0; // ball of testing

long AverangeAgeGroup = 0;
long AverangeAgeTotal = 0;
int sumAgeChild = 0;

try {

for (int i=0;i<4;i++) {
String nameGroup = fin.readLine();
System.out.println(" ");
System.out.println("Groupe name - " + nameGroup);
sumAgeChild = 0; for (int j=0;j<6;j++) {
String nameChild = fin.readLine();
int ageChild = (int) Double.valueOf(fin.readLine()).doubleValue();

sumAgeChild = sumAgeChild + ageChild;
ch[j] = new Child(nameChild,ageChild);
// Report
ch[j].write();
// System.out.println("Child name - " + ch[j].name + " Age - " + ch[j].age);
}
AverangeAgeGroup = Math.round(sumAgeChild/6);
AverangeAgeTotal = AverangeAgeTotal + AverangeAgeGroup;
System.out.println("AverangeAgeGroup - " + AverangeAgeGroup);

}
}
catch (EOFException e) {
System.out.println(" All data is reading ");
}

System.out.println("AverangeAgeTotal: " + Math.round(AverangeAgeTotal/4) );
}


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

new AverangeAge();
}
}


class Child {

String name; int age;

Child(String n, int a ){

name = n; age = a;
}
void write () {

System.out.println(name + " " + age+ " age ");

}


}


Результат :

AverangeAge
============================

Groupe name - Corn-flower
Poul McCartny 11 age
Jhon Lennon 9 age
Ringo Starkey 7 age
Gorge Harrison 10 age
Jhon Kennedy 9 age
Mike Jagger 8 age
AverangeAgeGroup - 9

Groupe name - Daisy
Poul Brown 7 age
Richard Stock 8 age
Wiliam Shekspear 9 age
Ernest Hemingway 10 age
Lewis Carrol 11 age
Mark Twen 7 age
AverangeAgeGroup - 8

Groupe name - Swallow
Edward Green 9 age
Wolfgang Mozart 10 age
Ludwig Beethoven 11 age
Ferenz List 7 age
Franz Bakkenbauer 7 age
Tomas Moor 9 age
AverangeAgeGroup - 8

Groupe name - Sky-lark
David Backham 11 age
Peter Resenfeld 9 age
Gorge Washington 10 age
Peter O-Tool 8 age
James Bond 9 age
Judy Bishoop 11 age
AverangeAgeGroup - 9
AverangeAgeTotal: 8


Назад | Начало урока | Вверх | Вперед
Содержание

Hosted by uCoz