Forum Pplware
Converter caracteres em linguagem C -ajuda URGENTE - Versão de Impressão

+- Forum Pplware (http://forum.pplware.com)
+-- Fórum: Mais Tech (/forumdisplay.php?fid=11)
+--- Fórum: Programação e Web (/forumdisplay.php?fid=16)
+--- Tópico: Converter caracteres em linguagem C -ajuda URGENTE (/showthread.php?tid=1389)



Converter caracteres em linguagem C -ajuda URGENTE - kiki_bgc - 12-01-2009 12:55

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?


RE: Converter caracteres em linguagem C -ajuda URGENTE - Ferreira - 12-01-2009 15:26

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.


RE: Converter caracteres em linguagem C -ajuda URGENTE - kiki_bgc - 12-01-2009 21:34

(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]);


RE: Converter caracteres em linguagem C -ajuda URGENTE - Shogun - 28-01-2009 22:32

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);