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

Глава 3

Задача 3.12 "Расписание "

Удобно иметь под рукой бланк расписания, где можно фиксировать время проведения лекций. Напишите программу, которая выводила бы на печать расписание, в верхней строке которого перечислены дни недели, а слева (сверху вниз) указаны значения времени от 8.00 до 15.00.

Решение

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



import java.text.*;
import javagently.*;
import java.util.*;
import java.io.*;

class Schedule {

int colsPerLine = 7; int maxLineNo = 5;
String gap = "\t\t";
String week[] = {

"Monday ","Tuesday ","Wednesday ","Thursday ","Friday ","Saturday ","Sunday "
}; String lessons[] = {
"History ","Biology ","Geographic","Mathematic","Logic ","Literature","Philosofy "
}; Schedule () {
// First print the headings
System.out.println();
System.out.println(gap+gap+gap+gap+gap+ "Schedule of lessons");
for (int col = 0; col < colsPerLine; col++)
System.out.print("==================");
System.out.println();

for (int col = 0; col < colsPerLine; col++) {

System.out.print("Time * "+ week[col] + " ");
}
System.out.print("\n");

for (int col = 0; col < colsPerLine; col++)
System.out.print("==================");

System.out.println();

// Seconnd, print the table:

Time tt = new Time(8,0); for (int r = 0; r < maxLineNo; r++) {

outaLine(r,tt); tt.addTime(60);
}
}


void outaLine(int thisline, Time t) {

for (int col = 0; col < colsPerLine; col++) {

// System.out.println(random_01(1,7) );
System.out.print( t +" " + lessons[random_01(1,7)]+ " ");
}
System.out.println();
}


public static void main(String[] args) {

new Schedule () ;
}


int random_01 (int min, int max ){

int z =0; while(z z = (int) (Math.random()* max);
}
return z;
}


}


class Time {

int hour; int min;

Time (int h, int m) {

hour = h; min = m;
}


Time (int mins) {

hour = mins / 60; min = mins % 60;
}


Time (double t) {

hour = (int) t; min = (int) t*100 - hour*100;
}


Time (Time t) {

hour = t.hour; min = t.min;
}


void addTime (int m) {

min +=m; hour+= min / 60; min %= 60;
}


boolean lessThan (Time t) {

return hour < t.hour | (hour==t.hour & min < t.min);
}


public String toString () {

if(hour < 10) return "0"+ hour + ":0" + min + " ";

return hour + ":0" + min + " ";
}
}


Результат :

Подсказка


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

Hosted by uCoz