These are notes for 21 October.
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int year, month;
cout << "Enter year (1900-): ";
cin >> year;
while(year < 1900) // input validation
{
cout << "ERROR. Enter year (1900-): ";
cin >> year;
}
cout << "Enter month (1-12): ";
cin >> month;
while(month < 1 || month > 12)
{
cout << "ERROR. Enter month (1-12): ";
cin >> month;
}
cout << "\n";
switch(month)
{
case 1: cout << "January"; break;
case 2: cout << "February"; break;
case 3: cout << "March"; break;
case 4: cout << "April"; break;
case 5: cout << "May"; break;
case 6: cout << "June"; break;
case 7: cout << "July"; break;
case 8: cout << "August"; break;
case 9: cout << "September"; break;
case 10: cout << "October"; break;
case 11: cout << "November"; break;
case 12: cout << "December"; break;
}
cout << " " << year << "\n\n";
cout << " Sun Mon Tue Wed Thu Fri Sat\n";
// on what day does the month start?
static int t[] = {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4};
int y = year - (month < 3);
int dayOfWeek = (y + y/4 - y/100 + y/400 + t[month-1] + 1) % 7;
//cout << "(starts on " << dayOfWeek << ")\n";
// skip over to correct day
//cout << setw(4 * dayOfWeek) << "";
for(int i = 0; i < dayOfWeek; i++) {
cout << " ";// four spaces
}
int daysInMonth = 31;
if(month == 2) { daysInMonth = 29; }
else if(month == 4 || month == 6 || month == 9
|| month == 11)
{ daysInMonth = 30; }
int day = 1;
while(day <= daysInMonth)
{
cout << setw(4) << day;
// One way: check whether day%7 == saturday
//int saturday = (7 - dayOfWeek) % 7;
// Another way: also increment dayOfWeek
day++;
if(dayOfWeek == 6) // Saturday
{
cout << "\n";
}
dayOfWeek = (dayOfWeek + 1) % 7;
}
return 0;
}
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int sizeOfTable = 14;
for(int i = 1; i <= sizeOfTable; i++)
{
for(int j = 1; j <= sizeOfTable; j++)
{
cout << setw(4) << i*j;
}
cout << "\n";
}
return 0;
}
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int sizeOfTable = 17;
for(int i = 0; i < sizeOfTable; i++)
{
for(int j = 0; j < sizeOfTable; j++)
{
if(i==0 || j==0 || i == sizeOfTable-1
|| j == sizeOfTable-1)
{ cout << "##"; }
else { cout << ".."; }
}
cout << "\n";
}
return 0;
}
#include <iostream>
using namespace std;
int main()
{
// Fast Exponentiation algorithm, computes
// i to the jth power.
int i = 4;
int j = 10;
int k = 1;
while(j > 0)
{
if(j%2 == 0) {
i *= i;
j /= 2;
} else {
k *= i;
j--;
}
}
cout << k << "\n";
}
#include <iostream>
using namespace std;
int main()
{
for(int i = 1; i < 5; i++)
{
int k = 0;
for(int j = 1; j <= i; j++)
{
k += j;
}
cout << k << "\n";
}
}