Глава 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 + " ";
}
}
Результат :
Назад |
Начало урока |
Вверх |
Вперед
Содержание