/*
 * Soubor:  20110415-Fri-smenar.c
 * Datum:   15.04.2011 10:01
 * Autor:   Marek Nožka, nozka <@t> spseol <d.t> cz
 * Licence: GNU/GPL 
 * Úloha: 
 * Popis:   
 ****************************************************/
#define _ISOC99_SOURCE
#define _GNU_SOURCE
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
/* ***************    Makra    ******************** */
#define ARREYC 1024
/* ***************   Funkce    ******************** */

typedef struct {
    char mena[4];
    float nakup;
    float prodej;
    float nasobek;
} Mena;

Mena listek[40];
int pocetMen = 0;


void pocitej(char mena[], char akce[], float castka)
{
    /* najdeu měnu */
    int i=0;
    for ( i=0; i < pocetMen; i++) {
        if ( strcmp(listek[i].mena,mena) == 0) {
            if (akce[0] == 'n') {
                printf("   %.0f", castka * listek[i].nakup );
            } else {
                printf("   %.0f", castka * listek[i].prodej );
            }
            break; // vyskočí z cyklu
        }
    }
    /* vypočet, výpis */
}

/****************************************************
 *               Hlavní program.
 ****************************************************/
int main(void)
{

/*    struct {          */
/*        char mena[4]; */
/*        float nakup;  */
/*        float prodej; */
/*        float nasobek;*/
/*    } listek[40];     */
#define DELKA 92
    char radek[DELKA];

    FILE *soubor;

    if ((soubor = fopen("kurzovni-listek.txt", "r")) == NULL) {
        perror("Chyba");
        return 1;
    }

    while (fgets(radek, DELKA, soubor) != NULL) {
        int i = 0;
        while (radek[i++] != '\0') {
            if (radek[i] == ',') {
                radek[i] = '.';
            }
        }
        if (sscanf(radek, "%s%f%f%f",
                   listek[pocetMen].mena,
                   &listek[pocetMen].nasobek,
                   &listek[pocetMen].nakup,
                   &listek[pocetMen].prodej) == 4) {
            pocetMen++;
        }
    }

    fclose(soubor);

    for (int i = 0; i < pocetMen; i++) {
        printf("%3d) %s %4.0f %8.3f %8.3f\n",
               i, listek[i].mena, listek[i].nasobek,
               listek[i].nakup, listek[i].prodej);
    }

    char mena[DELKA/2];
    char akce[DELKA/2];
    float castka;
    while ( fgets(radek, DELKA, stdin) != NULL) {
       if ( sscanf(radek,"%s%s%f",mena,akce, &castka) == 3 ) {
           pocitej(mena, akce, castka);
       } else {
           puts(">>>> Chybný vstup"); 
       }
    }



    return 0;
}

