Calendar - for "REAL" programmers: Difference between revisions
Content added Content deleted
m (→{{header|Wren}}: Minor tidy) |
imported>Arakov |
||
Line 1,077: | Line 1,077: | ||
_date := Date.new(_year, _month, 1); |
_date := Date.new(_year, _month, 1); |
||
DayNames.forEach:(name) |
DayNames.forEach::(name) |
||
{ _line.print(" ",name) } |
{ _line.print(" ",name) } |
||
} |
} |
||
Line 1,095: | Line 1,095: | ||
_line.writePaddingLeft(_date.Day.toPrintable(), $32, 3); |
_line.writePaddingLeft(_date.Day.toPrintable(), $32, 3); |
||
_date := _date.addDays |
_date := _date.addDays(1) |
||
} |
} |
||
until(_date.Month != _month || _date.DayOfWeek == 1) |
until(_date.Month != _month || _date.DayOfWeek == 1) |
||
Line 1,167: | Line 1,167: | ||
var rowCount := 12 / _rowLength; |
var rowCount := 12 / _rowLength; |
||
var months := Array.allocate(rowCount).populate:(i => |
var months := Array.allocate(rowCount).populate::(i => |
||
Array.allocate(_rowLength) |
Array.allocate(_rowLength) |
||
.populate:(j => |
.populate::(j => |
||
new CalendarMonthPrinter(_year, i * _rowLength + j + 1))); |
new CalendarMonthPrinter(_year, i * _rowLength + j + 1))); |
||
months.forEach:(row) |
months.forEach::(row) |
||
{ |
{ |
||
var r := row; |
var r := row; |
||
row.forEach:(month) |
row.forEach::(month) |
||
{ |
{ |
||
month.printTitleTo |
month.printTitleTo(output); |
||
output.write |
output.write(" ") |
||
}; |
}; |
||
output.writeLine(); |
output.writeLine(); |
||
ParallelEnumerator.new(row).forEach:(line) |
ParallelEnumerator.new(row).forEach::(line) |
||
{ |
{ |
||
line.forEach:(printer) |
line.forEach::(printer) |
||
{ |
{ |
||
printer.printTo |
printer.printTo(output); |
||
output.write |
output.write(" ") |
||
}; |
}; |
||
Line 1,202: | Line 1,202: | ||
public program() |
public program() |
||
{ |
{ |
||
var calender := Calendar.new(console.write |
var calender := Calendar.new(console.write("ENTER THE YEAR:").readLine().toInt()); |
||
calender.printTo |
calender.printTo(console); |
||
console.readChar() |
console.readChar() |