Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: luis_rodrigo en 25 Mayo 2015, 06:25 AM

Título: ????? :(
Publicado por: luis_rodrigo en 25 Mayo 2015, 06:25 AM
Escribir un bucle que examine cada carácter de un array de caracteres llamado texto y
escribir el equivalente ASCII (el valor numérico) de cada carácter. Escribir el bucle de tres
formas diferentes:


a. Utilizando una sentencia while.
b. Utilizando una sentencia do while.
c. Utilizando una sentencia for.
alguna explicación porfavor!!
Título: Re: ????? :(
Publicado por: Eternal Idol en 25 Mayo 2015, 11:52 AM
¿Y que hiciste hasta ahora? No se hacen tareas.

PD. Trata de poner un titulo con un minimo de relacion con la duda por favor.
Título: Re:
Publicado por: HCK. en 25 Mayo 2015, 15:03 PM
Te lo podría resolver en C#... Y te ayudaría bastante puesto que sintácticamente es muy similar... Pero debes de intentarlo para ayudarte a corregirlo... No te podemos ayudar si tu no lo intentas.

Que los bucles recorran la longitud del array es lo único que te puedo decir para que te animes a intentarlo partiendo de una base...
Pero tienes que intentar hacerlo, si no no podemos ayudarte en mas.

Un saludo.
Título: Re: ????? :(
Publicado por: engel lex en 25 Mayo 2015, 16:47 PM
Hola! modifica el titulo

reglas del foro
(http://i.imgur.com/Kqgoftx.png)
Título: Re: ????? :(
Publicado por: 0xFer en 25 Mayo 2015, 19:08 PM
Cita de: luis_rodrigo en 25 Mayo 2015, 06:25 AM
Escribir un bucle que examine cada carácter de un array de caracteres llamado texto y
escribir el equivalente ASCII (el valor numérico) de cada carácter. Escribir el bucle de tres
formas diferentes:


a. Utilizando una sentencia while.
b. Utilizando una sentencia do while.
c. Utilizando una sentencia for.
alguna explicación porfavor!!

Este es el arreglo de caracteres
Código (cpp) [Seleccionar]

char* texto = "LO_QUE_SEA_AQUI";


lo puedes recorrer y convertir así:
Código (cpp) [Seleccionar]

for(;*texto;texto++){
    int ASCII = (int)*texto;
}


Intenta hacerlo con los demás bucles  :)


Título: Re: ????? :(
Publicado por: luis_rodrigo en 25 Mayo 2015, 19:59 PM
sisi obvio no esperaba que me lo hicieran por eso puse explicas ion porfavor, bueno lo que entendi del programa esque boy a ingresar el numer de caracteres en un arreglo

int x, i=0;
char texto[];

printf ("ingrese el numero de caracteres que quiere ingresar ");

for (i=0; i<=x; i++)
{
      scanf ("%d", &texto
Título: Re: ????? :(
Publicado por: 0xFer en 25 Mayo 2015, 20:21 PM
El problema solo te pide convertir los caracteres a ASCII http://es.wikipedia.org/wiki/ASCII
Título: Re: ????? :(
Publicado por: luis_rodrigo en 25 Mayo 2015, 20:26 PM
e pero esque no entiendoo pór eso lo posteo explicame :( no te desesperes jamas hice un programa que inbolucrara a ACII
Título: Re: ????? :(
Publicado por: 0xFer en 25 Mayo 2015, 20:38 PM
Se usa para representar texto usando números:
por ejemplo para la letra A en ASCII sería 65, la e sería 101.

Mira en el link que te pasé, te vas a dar cuenta de que hay un número para representar cada letra.

para convertir un carácter ASCII en C++ simplemente lo tienes que convertir a entero así:

Código (cpp) [Seleccionar]

int ASCII_A = (int)'A';


sigue leyendo el link que te pasé  ;)
Título: Re:
Publicado por: HCK. en 25 Mayo 2015, 22:50 PM
Tengo curiosidad... Estudias por tu cuenta, o estas en alguna clase o algo? (@luis_rodrigo).

Bueno, ya que te han comentado, te explicaré un poco en C# (que fácilmente puedes adaptar el código a C++).
Código (csharp) [Seleccionar]

//*Array donde almacenaremos los caracteres del texto deseado.
char[] cArray;

//*Array de enteros donde se almacenará cada carácter en ASCII numérico.
List<int> aChar = new List<int>();

//*Texto a convertir a chars.
string sTexto = "EsteseramiTexto";


//*Pasamos el texto al array de char para separar cada carácter de manera independiente.
cArray = sTexto.ToCharArray(0, sTexto.Length);

//*Con la longitud del Array, hacemos que el bucle se repita el mismo numero de veces dependiendo de la longitud que tenga y a su vez, por cada repetición, convertimos cada carácter a su valor entero (ASCII) y lo almacenamos en una lista, que viene a ser un Array de enteros.

for (int i = 0; i < sTexto.Length; i++)
{
         aChar.Add((int)cArray[i])
}


Esto es un ejemplo en C Sharp... Lo puedes adaptar a C++, puesto que con esto la base lógica ya la tienes. Quizás te sirva.

Un saludo
Título: Re: ????? :(
Publicado por: 0xFer en 25 Mayo 2015, 23:04 PM
@HCK. usa las etiquetas GeSHi así se ve mejor el código  :)
Título: Re: ????? :(
Publicado por: HCK. en 26 Mayo 2015, 01:27 AM
Cita de: 0xFer en 25 Mayo 2015, 23:04 PM
@HCK. usa las etiquetas GeSHi así se ve mejor el código  :)

Corregido compañero. :) Es que lo escribí desde Tapatalk y no me se de memoria los encapsulados!

Un saludo!
Título: Re: ????? :(
Publicado por: crack81 en 26 Mayo 2015, 01:57 AM
Te dejo esta version

Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;

int main()
{
    string arreglo="Bienvenido a la programacion XD";


    //usando for
    for(unsigned int i=0;i<arreglo.length();i++){
       cout<<(int)arreglo[i]<<" ";
    }
    cout<<endl;
    //------------------------------------<------------
    //usando while
    unsigned int i=0;

    while(i<arreglo.length()){
       cout<<(int)arreglo[i]<<" ";
       i++;
    }
    cout<<endl;
    //---------------------------------------------------
    //usando don while

    i=0;

    do{
      cout<<(int)arreglo[i]<<" ";
      i++;
    }
    while(i<arreglo.length());

    cin.get();
    cin.get();
    return 0;
}
Título: Re: ????? :(
Publicado por: WHK en 26 Mayo 2015, 02:16 AM
Bloqueo el tema y no lo borro por respeto al moderador.

Se mencionó que se cambiara el título del post y no se hizo caso, y tal como se menciona en el segundo post acá no se hace la tarea a nadie, explicaciones sobre como hacer algo si pero hacerlo no.

Por lo menos en el post anterior ya hicieron todo asi que... que mas da.