/* Output from p2c 1.21alpha-07.Dec.93, the Pascal-to-C translator */ /* From input file "baza.pas" */ #include <p2c/p2c.h> /*create by Cez*/ typedef struct ZAPIS { Char IMIE[19]; Char NAZ[29]; Char UL[29]; } ZAPIS; Static FILE *PLIK; Static boolean koniec; Static ZAPIS X[10]; Static long i; Static Void TABELKA(nr, imie1, nazwisko1, ulica1) unsigned short nr; Char *imie1, *nazwisko1, *ulica1; { long X, X1, X2; for (X = 2; X <= 79; X++) { gotoxy((int)X, 5); putchar(196); } for (X1 = 2; X1 <= 79; X1++) { gotoxy((int)X1, 9); putchar(196); } for (X2 = 2; X2 <= 79; X2++) { gotoxy(20, 6); putchar(179); gotoxy(20, 8); putchar(179); gotoxy(49, 6); putchar(179); gotoxy(49, 8); putchar(179); gotoxy(80, 6); putchar(179); gotoxy(80, 8); putchar(179); gotoxy(9, 6); printf("IMIE"); gotoxy(3, 8); printf("%12u.%s", nr, imie1); gotoxy(31, 6); printf("NAZWISKO"); gotoxy(22, 8); fputs(nazwisko1, stdout); gotoxy(51, 6); printf("ULICA, NR DOMU/NR MIESZKANIA"); gotoxy(51, 8); fputs(ulica1, stdout); gotoxy(35, 1); printf("OSOBA WYSZUKANA: "); gotoxy(1, 10); printf("Press enter\n"); do { } while (!kbhit()); } } Static Void status() { clrscr(); for (i = 1; i <= 10; i++) printf("%12ld.%s %s %s\n", i, X[i-1].IMIE, X[i-1].NAZ, X[i-1].UL); do { } while (getch() == '\015'); } Static Void WPISZ() { long c; Char *TEMP; clrscr(); printf("Podaj numer identyfikacyjny"); scanf("%ld%*[^\n]", &c); getchar(); printf("PODAJ IMIE ABONAMENTA: "); fgets(X[c-1].IMIE, 19, stdin); TEMP = strchr(X[c-1].IMIE, '\n'); if (TEMP != NULL) *TEMP = 0; printf("PODAJ NAZWISKO ABONAMENTA: "); fgets(X[c-1].NAZ, 29, stdin); TEMP = strchr(X[c-1].NAZ, '\n'); if (TEMP != NULL) *TEMP = 0; printf("PODAJ ADRES ABONAMENTA: "); fgets(X[c-1].UL, 29, stdin); TEMP = strchr(X[c-1].UL, '\n'); if (TEMP != NULL) *TEMP = 0; TABELKA((int)c, X[c-1].IMIE, X[c-1].NAZ, X[c-1].UL); } Static Void SZUKAJ() { long A, indeks; Char Z[16]; boolean znalazlem = false; unsigned short odszukany; Char *TEMP; clrscr(); printf(" OPCJE SZUKANIA : \n"); printf(" 1. wedlug imienia\n"); printf(" 2. wedlug nazwiska\n"); printf(" 3. wedlug numeru \n"); scanf("%ld%*[^\n]", &A); getchar(); if (A == 1) { clrscr(); printf("PODAJ IMIE ABONAMENTA: "); fgets(Z, 16, stdin); TEMP = strchr(Z, '\n'); if (TEMP != NULL) *TEMP = 0; for (i = 1; i <= 10; i++) { if (!strcmp(Z, X[i-1].IMIE)) { znalazlem = true; odszukany = i; } } } if (A == 2) { clrscr(); printf("PODAJ NAZWISKO ABONAMENTA: "); fgets(Z, 16, stdin); TEMP = strchr(Z, '\n'); if (TEMP != NULL) *TEMP = 0; for (i = 1; i <= 10; i++) { if (!strcmp(Z, X[i-1].NAZ)) { znalazlem = true; odszukany = i; } } } if (A == 3) { printf("Podaj numer:\n"); scanf("%ld%*[^\n]", &indeks); getchar(); clrscr(); if (*X[indeks-1].IMIE != '\0') TABELKA((int)indeks, X[indeks-1].IMIE, X[indeks-1].NAZ, X[indeks-1].UL); else printf("Nikt nie zostal znaleziony\n"); } if (znalazlem == true) TABELKA(odszukany, X[odszukany-1].IMIE, X[odszukany-1].NAZ, X[odszukany-1].UL); else printf("Nikt nie zostal znaleziony\n"); do { } while (getch() != '\015'); } Static Void KASUJ() { Char pytanie; unsigned short n; clrscr(); printf("Podaj numer"); scanf("%hd%*[^\n]", &n); getchar(); printf("Czy na pewno chcesz skasowac abonamenta %s(t/n)", X[n-1].IMIE); scanf("%c%*[^\n]", &pytanie); getchar(); if (pytanie == '\n') pytanie = ' '; if (pytanie == 't' || pytanie == 'T') { printf("%s.......[skasowane]\n", X[n-1].IMIE); *X[n-1].IMIE = '\0'; printf("%s.......[skasowane]\n", X[n-1].NAZ); *X[n-1].NAZ = '\0'; printf("%s.......[skasowane]\n", X[n-1].UL); *X[n-1].UL = '\0'; } do { } while (!kbhit()); } Static Void zapisz_do_pliku() { /* p2c: baza.pas, line 153: Note: REWRITE does not specify a name [181] */ if (PLIK != NULL) rewind(PLIK); else PLIK = tmpfile(); if (PLIK == NULL) _EscIO(FileNotFound); for (i = 1; i <= 10; i++) { fprintf(PLIK, "%s\n", X[i-1].IMIE); fprintf(PLIK, "%s\n", X[i-1].NAZ); fprintf(PLIK, "%s\n", X[i-1].UL); } fclose(PLIK); PLIK = NULL; } Static Void odczytaj_z_pliku() { Char *TEMP; rewind(PLIK); for (i = 1; i <= 10; i++) { fgets(X[i-1].IMIE, 19, PLIK); TEMP = strchr(X[i-1].IMIE, '\n'); if (TEMP != NULL) *TEMP = 0; fgets(X[i-1].NAZ, 29, PLIK); TEMP = strchr(X[i-1].NAZ, '\n'); if (TEMP != NULL) *TEMP = 0; fgets(X[i-1].UL, 29, PLIK); TEMP = strchr(X[i-1].UL, '\n'); if (TEMP != NULL) *TEMP = 0; } } Static Void MENU() { long y; /*clrscr; GOTOXY(20,14-10); WRITE('1. szukanie abonamneta'); GOTOXY(20,15-10); WRITE('2. wpisywanie danych abonamneta'); GOTOXY(20,16-10); WRITE('3. kasowanie danych abonamneta'); gotoxy(20,17-10); write('4. zpisanie do pliku'); gotoxy(20,18-10); write('5. wczytanie z pliku'); gotoxy(20,9); write('6. wyswietlenie wszystkich komorkek bazy'); gotoxy(20,10); write('7. wyswietlenie wolnych komorkek bazy'); gotoxy(20,19); write('0. Wyjscie z programu');*/ /* p2c: baza.pas, line 192: Note: Characters >= 128 encountered [281] */ printf( "\311\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\273\n"); /* p2c: baza.pas, line 193: Note: Characters >= 128 encountered [281] */ printf("\272 tu Tomek bendze nazwa programu (wpisz ja) \272\n"); /* p2c: baza.pas, line 194: Note: Characters >= 128 encountered [281] */ printf( "\314\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\271\n"); /* p2c: baza.pas, line 195: Note: Characters >= 128 encountered [281] */ printf("\272 1 - szukanie abonamneta \272\n"); /* p2c: baza.pas, line 196: Note: Characters >= 128 encountered [281] */ printf("\272 2 - wpisywanie danych abonamneta \272\n"); /* p2c: baza.pas, line 197: Note: Characters >= 128 encountered [281] */ printf("\272 3 - kasowanie danych abonamneta \272\n"); /* p2c: baza.pas, line 198: Note: Characters >= 128 encountered [281] */ printf("\272 4 - zpisanie do pliku \272\n"); /* p2c: baza.pas, line 199: Note: Characters >= 128 encountered [281] */ printf("\272 5 - wczytanie z pliku \272\n"); /* p2c: baza.pas, line 200: Note: Characters >= 128 encountered [281] */ printf("\272 6 - wyswietlenie wszystkich komorkek bazy \272\n"); /* p2c: baza.pas, line 201: Note: Characters >= 128 encountered [281] */ printf("\272 7 - wyswietlenie wolnych komorkek bazy \272\n"); /* p2c: baza.pas, line 202: Note: Characters >= 128 encountered [281] */ printf("\272 0 - wyjscie z programu \272\n"); /* p2c: baza.pas, line 203: Note: Characters >= 128 encountered [281] */ printf( "\310\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\315\274\n"); gotoxy(2, 13); printf("Twoj wybor ??"); scanf("%ld%*[^\n]", &y); getchar(); switch (y) { case 1: SZUKAJ(); break; case 2: WPISZ(); break; case 3: KASUJ(); break; case 4: zapisz_do_pliku(); break; case 5: odczytaj_z_pliku(); break; case 6: status(); break; case 0: koniec = true; break; } } main(argc, argv) int argc; Char *argv[]; { PASCAL_MAIN(argc, argv); PLIK = NULL; clrscr(); /* p2c: baza.pas, line 221: * Note: Opening a file whose name contains a ':' [177] */ /* p2c: baza.pas, line 221: Warning: * Don't know how to ASSIGN to a non-explicit file variable [207] */ assign(PLIK, "C:\\ABONAMEN.DAT"); do { MENU(); } while (koniec != true); if (PLIK != NULL) fclose(PLIK); exit(EXIT_SUCCESS); } /* End. */