Forum Pplware

Versão Completa: Converter caracteres em linguagem C -ajuda URGENTE
Está de momento a ver uma versão reduzida do nosso conteúdo. Ver versão completa com o formato adequado.
ola.. eu tou com um problema... eu tenho um texto encriptado e tenho uma chave para o desencriptar.. especificando: tenho um texto e a letra k aparecer mais vezes ira corresponder ao "a" depois correspondera "e" depois "o"....... ja consegui formular um programa que conta o numero de vezes que um determinado caracter aparece no texto mas nao sei como fazer a conversao de uma letra por outra. Será que alguem me pode ajudar?
Podes tentar com um array em que vais guardando a letra transformada correspondente a cada letra original, i.e., a letra correspondente ao A na posição 0, ao B na posição 1 e assim sucessivamente.
(12-01-2009 15:26)Ferreira Escreveu: [ -> ]Podes tentar com um array em que vais guardando a letra transformada correspondente a cada letra original, i.e., a letra correspondente ao A na posição 0, ao B na posição 1 e assim sucessivamente.

e como faxo isso? como escrevo o programa para isso? o k ja tenho feito é:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main ()
{
char st[] = "cscmxcszfsocmfzscssjncwcgfspezgcfkjgznvcwbmcjcwesjvcncbfmxcmzsnenkcgzcnvzsncazic​gfsbcsscmcxcjngccwzxgcvcbmfocnczxbzmjifsziezmmcszsrfmkcgfsxcjsgfpezbmfxzvjccrfmk​chexcnczznvmziznvzmzxfvczgjrjkcmcxnfafmzjnfpezvcnvfseowjxcmcxzvcxozxcsxzxfmjcsiw​fmjfscsgcpezwzsmzjspezrfmcxgjwcvcngfcrzfjxbzmjfzcsvzmmcsajkjfscsgzcrmjkczgzcsjcc​ngcmcxgzacsvcngfzcpezwzspezbfmfomcsacwzmfscsszacfgcwzjgcxfmvzwjozmvcngfkcnvcngfz​sbcwhcmzjbfmvfgcbcmvzszcvcnvfxzcyegcmfzniznhfzcmvzkzsszxgfscojfimzifzgfvmfjcnfcs​ncazickfzsimcngzspezrjqzmcxkcwzszgzcwztcngmfzgzvmcycnfcrcxcgcsajvfmjcspezvjazmcx​pezzekcnvffbzjvfjwesvmzwesjvcnfcpezxnzbvenfzxcmvzfozgzkzmcxkzsszvegffpezcxesccnv​jickcnvcpezfevmfacwfmxcjscwvfszcwzacnvczafsvcijgzsxjnhcsbfjskmjcgfvzngzszxxjexnf​afzniznhfcmgznvzszszxbmzzxazmsfhexjwgzkzwzomcgfrfjgzxjafssfmjfcwzmzxznvzgcjxzcif​mcexsfxcwvfzseowjxcgfexzsvjwfimcngjwfkfzkfmmznvzbfmpezgzafsscsciecsrzoffmgznzpez​ncfvznhcxznazyccsgzhjbfkmznzgcjxzecremjcimcngzzsfnfmfsczncfgzcimzsvzcazncfermcev​cmegcxcsgzveockcnfmczozwjkfscpezfbzjvfckzngzzckfmcfizsvfxegcgcjxzjiecwkcnvfcfsrz​jvfsgcrcxfsciznvzafsscpezcxcmvzvcnvfcyegcpezszzsbcwhzzszkcnvznfenjazmsfszvcfseow​jxzbmzkfkcozzxazmsfzafsfozxncskjgcsziemcnkcgcwesjvcnccnvjicwjozmgcgzzncfxznfskzm​vjssjxczsbzmcnkcgzcexznvfgcbzpeznckmjsvcngcgzafsfnfafvzxfmgcxcemcwcnkcxcmcajwhcr​cvcwgcnfsscjgcgzgcgccfxengfbfmgzespezvfgffxcngzbzmcgfxengfcgzesgcmbcmvzimcngz";
const char * const msg = "cscmxcszfsocmfzscssjncwcgfspezgcfkjgznvcwbmcjcwesjvcncbfmxcmzsnenkcgzcnvzsncazic​gfsbcsscmcxcjngccwzxgcvcbmfocnczxbzmjifsziezmmcszsrfmkcgfsxcjsgfpezbmfxzvjccrfmk​chexcnczznvmziznvzmzxfvczgjrjkcmcxnfafmzjnfpezvcnvfseowjxcmcxzvcxozxcsxzxfmjcsiw​fmjfscsgcpezwzsmzjspezrfmcxgjwcvcngfcrzfjxbzmjfzcsvzmmcsajkjfscsgzcrmjkczgzcsjcc​ngcmcxgzacsvcngfzcpezwzspezbfmfomcsacwzmfscsszacfgcwzjgcxfmvzwjozmvcngfkcnvcngfz​sbcwhcmzjbfmvfgcbcmvzszcvcnvfxzcyegcmfzniznhfzcmvzkzsszxgfscojfimzifzgfvmfjcnfcs​ncazickfzsimcngzspezrjqzmcxkcwzszgzcwztcngmfzgzvmcycnfcrcxcgcsajvfmjcspezvjazmcx​pezzekcnvffbzjvfjwesvmzwesjvcnfcpezxnzbvenfzxcmvzfozgzkzmcxkzsszvegffpezcxesccnv​jickcnvcpezfevmfacwfmxcjscwvfszcwzacnvczafsvcijgzsxjnhcsbfjskmjcgfvzngzszxxjexnf​afzniznhfcmgznvzszszxbmzzxazmsfhexjwgzkzwzomcgfrfjgzxjafssfmjfcwzmzxznvzgcjxzcif​mcexsfxcwvfzseowjxcgfexzsvjwfimcngjwfkfzkfmmznvzbfmpezgzafsscsciecsrzoffmgznzpez​ncfvznhcxznazyccsgzhjbfkmznzgcjxzecremjcimcngzzsfnfmfsczncfgzcimzsvzcazncfermcev​cmegcxcsgzveockcnfmczozwjkfscpezfbzjvfckzngzzckfmcfizsvfxegcgcjxzjiecwkcnvfcfsrz​jvfsgcrcxfsciznvzafsscpezcxcmvzvcnvfcyegcpezszzsbcwhzzszkcnvznfenjazmsfszvcfseow​jxzbmzkfkcozzxazmsfzafsfozxncskjgcsziemcnkcgcwesjvcnccnvjicwjozmgcgzzncfxznfskzm​vjssjxczsbzmcnkcgzcexznvfgcbzpeznckmjsvcngcgzafsfnfafvzxfmgcxcemcwcnkcxcmcajwhcr​cvcwgcnfsscjgcgzgcgccfxengfbfmgzespezvfgffxcngzbzmcgfxengfcgzesgcmbcmvzimcngz";
int i;
unsigned int contadores[26];
for (i = 0; i<26; i++)
contadores [i] = 0;
msg[i] - 'a';
for (i=0; i<strlen(msg); i++)
contadores [ msg[i] - 'a' ]++;
for (i=0; i<26; i++)
printf("%c -> %d\n", i + 'a', contadores[i]);
int a = 'a'; // N me lembro se assim da
de qualquer das maneiras se for so pra fazeres print basta
char b = 'b';
printf("%d",b);
URL's de Referência