Professional Documents
Culture Documents
MICRO PROJECT
Academic year: 2020-21
(i)
MAHARASHTRA STATE
BOARD OF TECHNICAL EDUCATION
Certificate
This is to certify that Mr. Sahil J., Kapil T. , Abhishek D. Roll No. 22-24 of Third (III)
Semester of Diploma in Instrumentation, Of Institute, V.E.S. POLYTECHNIC (Code:
0004) has Completed the Micro Project satisfactorily in Subject- Programming in
‘C’ (PIC)for the academic year 2020 - 2021 as prescribed in the curriculum.
Seal of Institution
(ii)
Group Details:
(iii)
INDEX
Academic year: 2020-21 Name of the faculty: Mrs. Mr. Kalpesh bagal
SR.
CONTENT PAGE NO.
NO.
Micro-Project Proposal
a) Aims/Benefits
b) Course Outcomes Addressed
1 c) Proposed Methodology
d) Action Plan
e) Resources Required
2 Rationale
4 Literature Review
c. Proposed Methodology
Discussion of the online topic with group members.
Literature Survey.
Collection of information.
Analysis of Data.
Report presentation
d. Action Plan:
e. Resources Required :
Kapil T.(22)
Abhishek D. (24)
Annexure – II
This Micro project “Calendar Application” is a simple project built in C. This project has
following features.
1. It displays a nicely formatted calendar of every month.
2. You can find the day by entering the day, month and year. For example, ifyou
enter day = 10, month = 03 and year = 1991, it gives you the day ‘Sunday’.
3. You can add the note for a particular day.
4. If the given month has a note in it, it will display || in that day.
4. Literature Review:
www.codewithc.com
https://en.m.wikipedia.org
www.codeproject.com
www.google.com
5. Actual methodology followed (Step wise work done, data collected, contribution
of individual member)1. Create an xml for weeks.
2. Initialize days and weeks.
3. Create parameter for days butbutto
4. Create each days and add days in weeks.
5. Get values from android’s calendar instance.
6. Let’s add numbers in days.
Adding numbers of current months. , Adding previous month
numbers., Adding next month numbers. ,
C –Program
#include <stdio.h>
#include <stdlib.h>
// Copied from
// https://stackoverflow.com/questions/35103745/read-a-string-as-an-input-using-scanf
void flush()
{
int c;
while ((c = getchar()) != '\n' && c != EOF);
}
typedef struct {
int day;
int month;
int year;
char note[255];
} Note;
while(1) {
printf("1. Find the day\n");
printf("2. Print calendar of a month\n");
printf("3. Add Note\n");
printf("4. Exit\n");
printf("Enter your choice: ");
scanf("\n%c", &choice);
switch(choice) {
case '1':
printf("Enter the day, month and year: ");
scanf("%d %d %d", &day, &month, &year);
printf("The day is : %s\n", getName(getDayNumber(day, month, year)));
break;
case '2':
printf("Enter the month and year: ");
scanf("%d %d", &month, &year);
printf("Please enter 's' to see the notes\n Press any other key to continue\n");
calendar(year, month);
break;
case '3':
printf("Enter the day, month and year: ");
scanf("%d %d %d", ¬e.day, ¬e.month, ¬e.year);
flush();
printf("Enter the note: ");
fgets(note.note, 255, stdin);
fp = fopen("note.bin", "a+");
if (fp == NULL) {
printf("File note.bin can not be opened\n");
exit(1);
}
fwrite(¬e, sizeof(Note), 1, fp);
printf("Note added sucessfully\n");
fclose(fp);
break;
case '4':
printf("Bye!!");
exit(0);
break;
default:
printf("Not a valid option\n");
break;
}
}
return 0;
}
weekOfTopDay = days(y, m, 1) % 7;
fp = fopen("note.bin", "rb");
if (fp == NULL) {
printf("Couldn't read notes\n");
}
len = 0;
while(fread(¬e, sizeof(Note), 1, fp))
{ if (note.year == y && note.month ==
m) { len++;
}
}
rewind(fp);
j = 0;
notes = (Note*) malloc (sizeof(Note) * len);
while(fread(¬e, sizeof(Note), 1, fp)) {
if (note.year == y && note.month == m) {
notes[j] = note;
j++;
}
}
fclose(fp);
if(isLeapYear(y))
DayOfMonth[2] = 29;
printf("\n %s %d\n%s\n", NameOfMonth[m], y, Week);
for(i=0;i<weekOfTopDay;i++)
printf(" ");
for(i=weekOfTopDay,day=1;day <= DayOfMonth[m];i++,day++){
hasNote = 0;
for (j = 0; j < len; j++) {
if (notes[j].day == day) {
printf("|%2d| ",day);
hasNote = 1;
break;
}
}
if (hasNote == 0)
{ printf("%2d
",day);
}
if(i % 7 == 6)
printf("\n");
}
printf("\n"); scanf("\n
%c", &choice); if
(choice == 's') {
printf("Here are list of notes for %d %d\n", m, y);
for (j = 0; j < len; j++) {
printf("%d: %s\n", notes[j].day, notes[j].note);
}
} else
{ retur
n;
}
}
Signature of faculty
Annexure – III
Literature Survey /
2 Information Collection
Presentation
7
Viva
8
Micro-Project Evaluation Sheet
Part A -Process and
Part B -individual Total Marks
Roll No. Name product Assessment
Presentation/Viva (4m) 10
(6m)
22 Sahil J.
23 Kapil T.
24 Abhishek D.
Note:
Every course teacher is expected to assign marks for group evolution in first 3 columns & individual
evaluation in 4TH columns for each group of students as per rubrics.
Signature