C zamiana samoglosek na

0

Witam, mam do wykonania projekt " zastap samogloski - cyframi wg tablicy kodowania" Jak na razie zrobilem cos takiego... ale mam problem z zamiana na cyfry, wiec prosze o pomoc. pozdrawiam

#include <cstdlib>
#include <iostream>



int main(int argc, char *argv[])
{
    char tekst[20];
    int i, dlugosc;
    printf("Wpisz tekst: ");
    scanf("%s", &tekst);
    dlugosc = strlen(tekst);
    printf("Dlugosc tablicy: %d\n", dlugosc);
    for (i = 0; i < dlugosc; i++)
    {
        int tekst_int = (int) tekst[i];
        printf("%c : %d\n", tekst[i], tekst_int);
        if(tekst_int == 97 || tekst_int == 101 || tekst_int == 105 || tekst_int == 111 || tekst_int ==  121 || tekst_int == 117)
        {
          char tekst_char = tekst_int;           
          tekst[i] = tekst_char;
        }
    }
    
    printf("%s", tekst);
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
0

Może użyj funkcji strcpy(), strncpy() do wycinania i łączenia fragmentów tekstu. Zamianę liczb na znaki realizujesz funkcją itoa.

0
jareta napisał(a)

" zastap samogloski - cyframi wg tablicy kodowania"

Cyframi? Czyli po prostu numer samogłoski w tablicy samogłosek?

0
Świętowit napisał(a)

Czyli po prostu numer samogłoski w tablicy samogłosek?

Ja zrozumialem to, ze mam zamienic samogloski na cyfry wg ASCII.

0

O co Ci chodzi w tym kodzie to nie wiem, ale cos takiego jest zbyt skomplikowane ?

#include <stdio.h>

int main(void)
{
	const char tab[] = "jakisTamKASJDTEKST";
	const size_t len = strlen(tab);
	unsigned int i;

	for(i = 0; i < len; i++)
	{
		if(tab[i] == 'A' || tab[i] == 'E' || tab[i] == 'a' || tab[i] == 'e')
			printf("%d", tab[i]);
		else
			printf("%c", tab[i]);
	}

	return 0;
}
0

@t0m_k, po jaką cholerę używasz ciągle magic numbers i to typu int grzebiąc w znakach? Uważasz, że kody znaków są seksowne?

//q: najwyrazniej to numerofil albo bitofil. kod zmienilem

0

Juz sobie poradzilem, @t0m_k-tmp dzieki za pomoc!

1 użytkowników online, w tym zalogowanych: 0, gości: 1