Code:
#include <stdio.h>#include "string.h"
#include "simpio.h"
#include "stdbool.h"
#define N 3
typedef struct{
char epwnymo[20];
char onoma[15];
char dieythinsi[30];
int poso_plirwmis;
}informationT;
void eisagwgi_stoixeiwn(informationT a[],int size);
void print_katastasi(informationT a[],int size,char kliniki[]);
informationT max(informationT a[],int size);
void print_best_astheni(informationT a);
int calc_sum(informationT a[],int size);
void emfanisi_astheni(informationT asthenis);
bool check_if(informationT a[],int size);
int main(){
informationT stoixeia[N],asthenis,patient;
int i,eispraksi;
char kliniki1[] = "Elpis";
char kliniki2[] = "Galinos";
bool check;
eisagwgi_stoixeiwn(stoixeia,N);
print_katastasi(stoixeia,4,kliniki1);
print_katastasi(stoixeia,3,kliniki2);
asthenis = max(stoixeia,N);
print_best_astheni(asthenis);
eispraksi = calc_sum(stoixeia,N);
for (i=0; i<100; i++){ printf("-"); }
printf("\n");
printf("Sinoliki eispraksi %d\n",eispraksi);
for (i=0; i<100; i++){ printf("-"); }
for (i=0; i<2; i++){printf("\n");}
patient = stoixeia[0];
emfanisi_astheni(patient);
printf("\n");
check = check_if(stoixeia,N);
if (check){
printf("PATIENT FOUND");
}
else{
printf("PATIENT NOT FOUND");
}
return 0;
}
void eisagwgi_stoixeiwn(informationT a[],int size){
int i;
for (i=0; i<size; i++){
printf("dwse ta stoixeia tou astheni %d\n",i+1);
printf("Dwse epwnymo ");
gets(a[i].epwnymo);
printf("Dwse onoma ");
gets(a[i].onoma);
printf("Dwse dieythinsi ");
gets(a[i].dieythinsi);
printf("Dwse poso plirwmis ");
a[i].poso_plirwmis = GetInteger();
}
for (i=0;i<2;i++){printf("\n");}
}
void print_katastasi(informationT a[],int size,char kliniki[]){
int i;
printf("------ %s ------\n",kliniki);
printf("%-5s %-9s %-11s %-16s \n","EPWNYMO","ONOMA","DIEYTHINSI","POSO" );
for (i=0; i<100; i++){
printf("-");
}
printf("\n");
for (i=0; i<size; i++){
printf("%-5s %-9s %-11s %-14d \n",a[i].epwnymo,a[i].onoma,a[i].dieythinsi,a[i].poso_plirwmis);
}
for (i=0; i<2; i++){ printf("\n"); }
}
informationT max(informationT a[],int size){
int i;
informationT best_asthenis;
strcpy( best_asthenis.dieythinsi,a[0].dieythinsi);
strcpy(best_asthenis.epwnymo,a[0].epwnymo);
strcpy(best_asthenis.onoma,a[0].onoma);
best_asthenis.poso_plirwmis = a[0].poso_plirwmis;
for (i=1; i<size; i++){
if (best_asthenis.poso_plirwmis < a[i].poso_plirwmis)
strcpy( best_asthenis.dieythinsi,a[i].dieythinsi);
strcpy(best_asthenis.epwnymo,a[i].epwnymo);
strcpy(best_asthenis.onoma,a[i].onoma);
best_asthenis.poso_plirwmis = a[i].poso_plirwmis;
}
return best_asthenis;
}
void print_best_astheni(informationT a){
int i;
printf("Kalhteros asthenis \n");
printf("Epwnymo Onoma Dieythinsi Poso \n");
for (i=0; i<100; i++){
printf("-");
}
printf("\n");
printf("%-7s %-20s %-10s %-5d \n",a.epwnymo,a.onoma,a.dieythinsi,a.poso_plirwmis);
for (i=0; i<2; i++){ printf("\n");}
}
int calc_sum(informationT a[],int size){
int sum,i;
sum = 0;
for (i=0; i<size; i++){
sum += a[i].poso_plirwmis;
}
return sum;
}
void emfanisi_astheni(informationT asthenis){
printf("%-7s %-20s %-10s %-5d \n",asthenis.epwnymo,asthenis.onoma,asthenis.dieythinsi,asthenis.poso_plirwmis);
}
bool check_if(informationT a[],int size){
int i;
char sur[20],name[15];
bool x;
printf("Give patient's last name \n");
gets(sur);
printf("Give patient's first name \n");
gets(name);
for (i=0; i<size; i++){
if ((strcmp(sur,a[i].epwnymo)) && strcmp(name,a[i].onoma) ){
x = true;
break;
}
else{
x = false;
break;
}
}
return x;
here is the whole program