Calculate your GPA in 1st Semester

C++ Code:
# include <iostream>
# include <iomanip>
using namespace std;
char subGrades[6][3];
void calGPA(char subGrades[][3])
{
double gradePoints = 0;
double gpa;
for (int i = 0; i < 6; i++)
{
if (i!=1)
{
if (strcmp(subGrades[i], "A") == 0)
{
gradePoints = gradePoints + (3.0*4.0);
}
else if (strcmp(subGrades[i], "A-") == 0)
{
gradePoints = gradePoints + (3.0*3.7);

}
else if (strcmp(subGrades[i], "B+") == 0)
{
gradePoints = gradePoints + (3.0*3.3);

}
else if (strcmp(subGrades[i], "B") == 0)
{
gradePoints = gradePoints + (3.0*3.0);

}
else if (strcmp(subGrades[i], "B-") == 0)
{
gradePoints = gradePoints + (3.0*2.7);

}
else if (strcmp(subGrades[i], "C+") == 0)
{
gradePoints = gradePoints + (3.0*2.3);

}
else if (strcmp(subGrades[i], "C") == 0)
{
gradePoints = gradePoints + (3.0*2.0);

}
else if (strcmp(subGrades[i], "C-") == 0)
{
gradePoints = gradePoints + (3.0*1.7);

}
else if (strcmp(subGrades[i], "D") == 0)
{
gradePoints = gradePoints + (3.0*1.0);

}
else if (strcmp(subGrades[i], "F") == 0)
{
gradePoints = gradePoints + (3.0*0.0);

}
}
if (i==1)
{
if (strcmp(subGrades[i], "A") == 0)
{
gradePoints = gradePoints + (1.0*4.0);

}
else if (strcmp(subGrades[i], "A-") == 0)
{
gradePoints = gradePoints + (1.0*3.7);


}
else if (strcmp(subGrades[i], "B+") == 0)
{
gradePoints = gradePoints + (1.0*3.3);

}
else if (strcmp(subGrades[i], "B") == 0)
{
gradePoints = gradePoints + (1.0*3.0);

}
else if (strcmp(subGrades[i], "B-") == 0)
{
gradePoints = gradePoints + (1.0*2.7);

}
else if (strcmp(subGrades[i], "C+") == 0)
{
gradePoints = gradePoints + (1.0*2.3);

}
else if (strcmp(subGrades[i], "C") == 0)
{
gradePoints = gradePoints + (1.0*2.0);

}
else if (strcmp(subGrades[i], "C-") == 0)
{
gradePoints = gradePoints + (1.0*1.7);

}
else if (strcmp(subGrades[i], "D") == 0)
{
gradePoints = gradePoints + (1.0*1.0);

}
else if (strcmp(subGrades[i], "F") == 0)
{
gradePoints = gradePoints + (1.0*0.0);

}
}

}
cout << setprecision(3) << showpoint << endl;
gpa = gradePoints / 16.00;
cout << "Your GPA in 1st Semester is : " << gpa << endl;
}
void calGradePoint(double subNumbers[])
{
for (int i = 0; i < 6; i++)
{
if (subNumbers[i] >= 80 && subNumbers[i] <= 100)
{
subGrades[i][0] = 'A';
if (subNumbers[i] >= 80 && subNumbers[i]<85)
{
subGrades[i][1] = '-';
subGrades[i][2] = '\0';
}
else
{
subGrades[i][1] = '\0';
subGrades[i][2] = '\0';
}

}
else if (subNumbers[i] >= 65)
{
subGrades[i][0] = 'B';
if (subNumbers[i] >= 75)
{
subGrades[i][1] = '+';
subGrades[i][2] = '\0';
}
else if (subNumbers[i] >= 70)
{
subGrades[i][1] = '\0';
subGrades[i][2] = '\0';
}
else
{
subGrades[i][1] = '-';
subGrades[i][2] = '\0';
}
}
else if (subNumbers[i] >= 55)
{
subGrades[i][0] = 'C';
if (subNumbers[i] >= 61)
{
subGrades[i][1] = '+';
subGrades[i][2] = '\0';
}
else if (subNumbers[i] >= 58)
{
subGrades[i][1] = '\0';
subGrades[i][2] = '\0';
}
else
{
subGrades[i][1] = '-';
subGrades[i][2] = '\0';
}
}
else if (subNumbers[i] >= 50)
{
subGrades[i][0] = 'D';
subGrades[i][1] = '\0';
subGrades[i][2] = '\0';
}
else
{
subGrades[i][0] = 'F';
subGrades[i][1] = '\0';
subGrades[i][2] = '\0';
}
}
calGPA(subGrades);
}
int main()
{
int choice;
double subNumbers[6];
cout << "Welcome to Your GPA Calculator in 1st Semester" << endl;
cout << endl;
cout << "Please select the way you want to proceed : " << endl;
cout << "Enter '1' to calculate GPA by Grades (A-F)" << endl;
cout << "Enter '2' to calculate GPA by Numbers in each Subject" << endl;
cin >> choice;
while (choice<1 ||choice>2)
{
cout << "Wrong choice" << endl;
cout << "Enter '1' to calculate GPA by Grades (A-F)" << endl;
cout << "Enter '2' to calculate GPA by Numbers in each Subject" << endl;
cin >> choice;
}
cin.ignore();
if (choice == 1)
{
cout << "Please follow the Following table to enter your Grade : " << endl;
cout << "Enter 'A' for 85 marks or above" << endl;
cout << "Enter 'A-' for (80-84) marks" << endl;
cout << "Enter 'B+' for (75-79) marks" << endl;
cout << "Enter 'B' for (70-74) marks" << endl;
cout << "Enter 'B-' for (65-69) marks" << endl;
cout << "Enter 'C+' for (61-64) marks" << endl;
cout << "Enter 'C' for (58-60) marks" << endl;
cout << "Enter 'C-' for (55-57) marks" << endl;
cout << "Enter 'D' for (50-54) marks" << endl;
cout << "Enter 'F' for 50 below marks" << endl;
cout << endl;
cout << "Please enter the grade of Programming Fundamentals : ";
cin.getline(subGrades[0], 3);
cout << "Please enter the grade of Programming Fundamentals Lab : ";
cin.getline(subGrades[1], 3);
cout << "Please enter the grade of Introduction to Computing : ";
cin.getline(subGrades[2], 3);
cout << "Please enter the grade of Calculus-I : ";
cin.getline(subGrades[3], 3);
cout << "Please enter the grade of ElectroMagnetic Theory : ";
cin.getline(subGrades[4], 3);
cout << "Please enter the grade of Islamiat+Pak.Studies : ";
cin.getline(subGrades[5], 3);

calGPA(subGrades);
}
else
{
cout << "Please enter numbers of Programming Fundamentals : ";
cin >> subNumbers[0];
cout << "Please enter numbers of Programming Fundamentals Lab : ";
cin >> subNumbers[1];
cout << "Please enter numbers of Introduction to Computing : ";
cin >> subNumbers[2];
cout << "Please enter numbers of Calculus-I : ";
cin >> subNumbers[3];
cout << "Please enter numbers of ElectroMagnetic Theory : ";
cin >> subNumbers[4];
cout << "Please enter numbers of Islamiat+Pak.Studies : ";
cin >> subNumbers[5];

calGradePoint(subNumbers);

}

getchar();
system("pause");
}

Some Latest Projects of Android Applications being Developed

1. Android-based Prescription Viewer Application

This project is an electronic-based prescription format for the doctors. The usage of this application is very simple for the doctors as it allows them to enter patient’s name, drugs’ details, and dosage. Once the details like patient’s postal address and area code are fed into the application, it enables the patient to acquire medicines directly from any pharmacy store. This system also provides a facility to send instructions to the patients.

2. Children Tracking System Using Bluetooth MANET Composed of Android Mobile Terminals

Tracking System Application
Tracking System Application
With this application, parents can easily track the whereabouts of their children using Android mobiles. In this system, Android terminals communicate through a Bluetooth MANET. This application also facilitates exchange of information through wireless LAN.

3. Authentication Schemes for Session Passwords using Color and Images by Android

Session Password Application
Session Password Application
Many people often use text-based passwords for the security of the data stored in their mobiles. However, the use of text-based passwords is prone to dictionary attacks and eavesdropping. This project is proposed to develop high security by implementing passwords as colors and images.




4. Android Suburban Railway Ticketing with GPS as Ticket Checker

This project eliminates the need to stand in queue for buying tickets. This particular system enables any user to buy the suburban railway ticket on the smart phone itself, and also provides a reference code for the ticket. This project uses the GPS system of the smart phone to validate and delete the ticket automatically once the user reaches the destination point.

5. Android System Design and Implementation for Telemetric Services

This application enables integration of Android software with the network management functions and media-oriented system transport technologies to use multiple network access. Telemetrics is an integration of both telecommunication and informatics. This system is applicable for traffic safety, road navigation, remote business, etc.

6. Automatic Brightness Control of the Hand-held Device Display with Low Illumination

This project reduces the need to set up brightness of the smart phone based on the ambient light intensity. In this project, the brightness of a Smart phone is controlled particularly in low illumination places. This application is based on using the image details of the user’s face and its background to estimate the contrast ratio and determine the brightness.
Android Based Brightness Control Application
Android Based Brightness Control Application

7. Network-Assisted Mobile Computing with Optimal Uplink Query Processing

Depending upon the queries of users, mobile applications often retrieve data from the remote servers. This affects the life of the batteries of the servers due to slow response time from the remote servers, and also due to a large number of queries. This application provides a solution by deploying mid-network systems with leasing capabilities. It helps reduce the consumption of the battery and also improves the performance of the system or response time.
Network Assisted Mobile Computing
Network Assisted Mobile Computing

8. A Personalized Mobile Search Engine (PMSE)

This project is different from the conventional search engines as it provides the ease of searching based on user preferences. The user preferences are classified as content concepts and location concepts. The project involves arrangement of user preferences in ontology-based multifaceted user profile for rank adaption purpose.
Personalized Mobile Service Engine
Personalized Mobile Service Engine

9. Network Behavior Analysis For Android Malware Detection

Security breaching and malicious attacks are the most common mobile threats that must be reduced to provide security to mobile users. This system detects all of the malware actions by program behaviors. By comparing trace abstractions to reference malicious behaviors, suspicious behaviors can be detected.
The above list of Android projects are implemented for Android OS and are recommended mostly for IT and MCA students as most of the projects require the development of software- based applications.
We hope that our interesting and latest project ideas offer immense help to the students and make them select appropriate projects for their final year project work.

Binary Division

Problem:
Divide two Binary Numbers
Solution:
#include <iostream>
using namespace std;
long diff( long a,long b);

int main ()
{
long long int num1,num2,temp=0,quotient=0;
int i=0;
//taking input
do
{
cout<<"Enter Dividend in Binary =";
cin>>num1;
cout<<"Enter Divisor in Binary=";
cin>>num2;
if (num1<num2)
cout<<"Invalid Input! Kindly input correct values\n"<<endl;
} while (num1<num2);

int num[50];

while (num1!=0)
{
num[i]=num1%10;
num1/=10;
i++;
}
--i;


while(i>=0)
{
temp=(temp*10)+num[i];
while (temp<num2 && i>=0 )
{
quotient*=10;
i--;
if (i<0)
break;
temp=temp*10+num[i];
}

if (i>=0)
{
quotient=(quotient*10)+1;
temp=diff(temp,num2);
i--;
}
}

cout<<endl<<endl<<"Quotient = "<<quotient<<"\nRemainder = "<<temp<<endl ;
return 0;
}
long diff( long a,long b)

{
long int num1[50],i=0,num2[50];
while (a||b)
{
num1[i]=a%10;
num2[i++]=(b%10);
a=a/10;
b=b/10;
}
i--;

long int diff[50],j,temp;

//calculating Difference

for(temp=0;temp<=i;temp++)
{

if (num1[temp]-num2[temp]>=0)
diff[temp]=num1[temp]-num2[temp];
else
{
j=temp;
j++;
while(num1[j]!=1)
num1[j++]=1;
num1[j]=0;
diff[temp]=1;

}

}

long int ans=0;
while (i>=0)
ans=(ans*10)+diff[i--];

return ans;

}


Binary Addition,Subtraction,Multiplication and Division

Problem:
Add, Subtract, Multiply and Division of two Binary Numbers 
Solution:
# include <iostream>
# include <cmath>
using namespace std;
int toDec(int binary)
{
int x = 0, a = 0, y = 0;
while (binary != 0)
{
x = binary % 10;
binary = binary / 10;
y = x*pow(2, a) + y;
a++;
}
return y;

}
int powCheck(int x)
{
for (int v = 0; v<1000; v++)
{
if (pow(2, v) == x)
{
return v;
}
}
}
int main()
{
int bin1, bin2, revBin = 0, conBin = 0;
char choice;
cout << "Please Enter 1st Binary Number : ";
cin >> bin1;
cout << "Please Enter 2nd Binary Number : ";
cin >> bin2;
cout << "Please Enter an operation to be done from below" << endl;
cout << "Enter '+'sign to Add Binary Numbers" << endl;
cout << "Enter '-'sign to Subtract Binary Numbers" << endl;
cout << "Enter '*'sign to Multiply Binary Numbers" << endl;
cout << "Enter '/'sign to Divide Binary Numbers" << endl;
cin >> choice;
int d1 = toDec(bin1); //bin1 to decimal
int d2 = toDec(bin2);
cout << "Decimal of 1st Binary is : " << d1 << endl;
cout << "Decimal of 2nd Binary is : " << d2 << endl;

int fun;
if (choice == '+')
{
fun = d1 + d2;
}
else if (choice == '-')
{
fun = d1 - d2;
}
else if (choice == '*')
{
fun = d1*d2;
}
else if (choice == '/')
{
fun = d1 / d2;
}
else
{
return 0;
}
int altFun = fun;
while (fun != 0)
{
revBin = revBin * 10 + fun % 2;
fun = fun / 2;

}
while (revBin != 0)
{
conBin = conBin * 10 + revBin % 10;
revBin = revBin / 10;
}
if (altFun % 2 == 0 && powCheck(altFun))
{
conBin = conBin*pow(10, powCheck(altFun));
cout <<"The result from "<<choice<<" is: "<< conBin << endl;

}
else if (altFun % 2 == 0)
{
do
{
conBin = conBin * 10;
} while (altFun != toDec(conBin));
cout <<"The result from "<<choice<<" is: "<< conBin << endl;
}
else
{
cout <<"The result from "<<choice<<" is: "<< conBin << endl;
}




return 0;


}


Binary Addition

Problem:
Add two Binary Numbers...
Solution:
# include <iostream>
using namespace std;
int toDec(int binary)
{
int x = 0, a = 0, y = 0;
while (binary != 0)
{
x = binary % 10;
binary = binary / 10;
y = x*pow(2, a) + y;
a++;
}
return y;
}
int main()
{
int x;
int y;
int a[10];
int b[10];
int result[20];
cout << "Please Enter 1st Binary Number : ";
cin >> x;
cout << "Please Enter 2nd Binary Number : ";
cin >> y;
int x1 = toDec(x);
int x2 = toDec(y);
int x3 = x1 + x2;
for (int j = 0; j < 10; j++)
{
a[j] = x % 10;
b[j] = y % 10;
x = x / 10;
y = y / 10;
}

for (int i = 0; i <10; i++)
{
if (a[i] + b[i]  == 0)
{
result[i] = 0;
}
else if (a[i] + b[i]  == 1)
{
result[i] = 1;
}
else if (a[i] + b[i] == 2)
{
result[i] = 0;
a[i + 1]++;
}
else if (a[i] + b[i] == 3)
{
result[i] = 1;
a[i + 1]++;

}
else if (a[i] + b[i]  == 4)
{
result[i] = 0;
a[i + 2]++;
}
}

int addResult = 0;
for (int k= 0; k < 10; k++)
{
addResult = addResult * 10 + result[k];
}
while (toDec(addResult) != x3)
{
addResult = addResult / 10;
}
cout <<"The Sum of 2 Binary Numbers is : "<< addResult << endl;

system("pause");
return 0;

}