• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zamiana liczb arabskich na rzymskie - niepotrzebne znaki przed wynikiem

0 głosów
51 wizyt
pytanie zadane 11 stycznia w C i C++ przez użytkownika futureprocessing Nowicjusz (160 punkty)
Co poprawić żeby przy wyniku nie pojawiało się ' dh ' i aby program wyglądał lepiej? Z góry mówię że dopiero się uczę programować i proszę w prostych słowach odpowiedzi. Dodatkowo mam pytanie moze mnie ktoś naprowadzi jak dodać funkcje konwertacji z rzymskich na arabskie? 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct RZYM{
    int arab;
    char *rzym;
} rz[] =    {{1000, "M"},
                    {900,   "CM"},
                    {500,   "D"},
                    {400,   "CD"},
                    {100,   "C"},
                    {90,    "XC"},
                    {50,    "L"},
                    {40,    "XL"},
                    {10,    "X"},
                    {9,     "IX"},
                    {5,     "V"},
                    {4,     "IV"},
                    {1,     "I"}};

char *wRzym(int n)
{
    char *rzymskie;
    int i = 0;

    rzymskie = (char *)malloc(sizeof(char) * 10);

    while (n) {
        while (n < rz[i].arab)
            i++;
        while(n >= rz[i].arab) {
            strcat(rzymskie, rz[i].rzym);
            n -= rz[i].arab;
        }
    }

    return rzymskie;
}

int main(int argc, char const *argv[])
{
    int liczba;
    char *wynik;

    printf("Wpisz liczbe w postaci arabskiej:\n");
    scanf("%d", &liczba);

    if(liczba < 0  || liczba > 3999) {
        printf("Liczba moze byc jedynie w zakresie od 1 do 3999.\n");
        return -1;
    }

    wynik = wRzym(liczba);
    puts(wynik);

    free(wynik);

    return 0;
}

 

komentarz 11 stycznia przez użytkownika futureprocessing Nowicjusz (160 punkty)

 j.w 

1 odpowiedź

0 głosów
odpowiedź 11 stycznia przez użytkownika vasiv Użytkownik (530 punkty)
Cześć

Wrzuciłem Twój kod do Code::Blocks'a i wszystko działa poprawnie. Żadne "dh" się nie pojawia.

Podobne pytania

0 głosów
1 odpowiedź 48 wizyt
0 głosów
1 odpowiedź 66 wizyt
pytanie zadane 5 dni temu w PHP, Symfony, Zend przez użytkownika KONDZIU Początkujący (280 punkty)
0 głosów
2 odpowiedzi 76 wizyt
...