[Legacy Content] This page contains very old information, which might not be valid anymore, they are only kept here for legacy purposes.
if you have any inquiries, feel free to contact me! Click here

GPA Calculator

I wrote this program back in June 2013, Now I'm sharing it on my little website :)

Download it here

 

Note that you will get an error ".........dll is not found" if you don't have Visual Studio Installed [vcredist 2010]

Solution:      (Select one of the two solutions)

  1. Install Visual Studio OR Visual Studio Runtime Environment

    32 bit Windows: Here 64 bit Windows: Here

    Source: http://www.ehabeldeeb.com/software-technology/43-vodafone-bill

    • 32 bit system: Here
    • 64 bit system: Here
  2. Download this DLL Pack and EXTRACT it in C:\Windows\

 

It's also FREE OPEN SOURCE! You can view the source code freely down here, it's nothing brilliant tho..

/*
** GPA Calculator for Arab Academy 
** Website    : www.ehabeldeeb.com 
** Written on : June 17th, 2013    
** Last Update: June 19th, 2013    

*/

#include <stdio.h>
#include <string.h>

// Transform Grade to Number
float transform(char x[]){
    float credHours = 3;
    if (strcmp(x, "A+") == 0 || strcmp(x, "a+") == 0)
        return 12/credHours;
    else if (strcmp(x, "A") == 0 || strcmp(x, "a") == 0)
        return 11.5/credHours;
    else if (strcmp(x, "A-") == 0 || strcmp(x, "a-") == 0)
        return 11/credHours;

    else if (strcmp(x, "B+") == 0 || strcmp(x, "b+") == 0)
        return 10/credHours;
    else if (strcmp(x, "B") == 0 || strcmp(x, "b") == 0)
        return 9/credHours;
    else if (strcmp(x, "B-") == 0 || strcmp(x, "b-") == 0)
        return 8/credHours;

    else if (strcmp(x, "C+") == 0 || strcmp(x, "c+") == 0)
        return 7/credHours;
    else if (strcmp(x, "C") == 0 || strcmp(x, "c") == 0)
        return 6/credHours;
    else if (strcmp(x, "C-") == 0 || strcmp(x, "c-") == 0)
        return 5/credHours;

    else if (strcmp(x, "D") == 0 || strcmp(x, "d") == 0)
        return 4/credHours;

    else if (strcmp(x, "F") == 0 || strcmp(x, "f") == 0)
        return 0;
    else
        printf("ERROR! - Unspecified Grade.");
}


/*
Numbered Grade System:
4 - Excellent
3 - Very Good
2 - Good
1 - Pass
0 - Fail
*/
int transGPA(float gpa){
    if (gpa <= 4 && gpa >= 3.4)
        return 4;
    else if (gpa < 3.4 && gpa >= 2.8)
        return 3;
    else if (gpa < 2.8 && gpa >= 2.4)
        return 2;
    else if (gpa < 2.4 && gpa >= 2)
        return 1;
    else
        return 0;
}
int welcome(){
    int choice;
    puts("\n\n\tWelcome to Ehab Eldeeb's GPA Calculator for AAST!\n\n");
    puts("\t***************************************************");
    puts("\t* Select one of the following:                    *");
    puts("\t* ****************************                    *");
    puts("\t*                                                 *");
    puts("\t*                                                 *");
    puts("\t* 0: Terminate GPA Calculator                     *");
    puts("\t* 1: Calculate GPA for a Single Semester          *");
    puts("\t* 2: Calculate Total GPA for all Semesters        *");
    puts("\t* 3: Features of GPA Calculator                   *");
    puts("\t* *: Any other choice will terminate the program. *");
    puts("\t***************************************************");
    printf("\n\nPlease Enter your choice: ");
    scanf("%d", &choice);
    return choice;
}
void single(){
    int num;
    char grade[3], msg[10];
    float tot = 0;
    printf("Enter Number of Courses This Semester: ");
    scanf("%d", &num);
    for (int i = 0; i < num; i++){
        printf("Enter Grade for Course %d: ", i+1);
        scanf("%s", grade);
        tot += transform(grade);
    }
    if(transGPA(tot/num) == 4)
    &nbs