Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - leosansan

#1291
Cita de: eleon en 27 Septiembre 2012, 17:03 PM
Hola, buenas tardes:
Estoy intentando solucionar un problema en el cual me introducen X números seguidos de Y caracteres sin espacio u otro tipo de separación entre ellos, ejemplo: 12345ABC
Sin problemas, ¿qué estabas haciendo?:
#include <stdio.h>
main()
{
    int i;
    scanf ("%d",&i);
    printf ("%d",i);
    return 0;
}

#1292
Cita de: Caster en 27 Septiembre 2012, 17:45 PM

#include <stdio.h>

int main() {
   
    int i;
    char cadena [80];
   
    scanf("%s", cadena);
   
    for (i=0;cadena [i]!='\0';i++);
                 
    printf ("\nEl texto tiene %d caracteres.\n",i);
    printf ("\nPresione ENTER para salir:");
    while (getchar()!='\n')
        ;
    return 0;
}

Saludos
#1293
Programación C/C++ / Re: RETOS C++
27 Septiembre 2012, 17:53 PM
Cita de: ankora45 en 27 Septiembre 2012, 17:20 PM
ola xD antes de nada he de decirte que los retos son en c++ no en c
Una retirada a tiempo es una victoria. Sorry por el C.
#1294
Programación C/C++ / Re: RETOS C++
27 Septiembre 2012, 16:42 PM
Cita de: Stakewinner00 en 20 Septiembre 2012, 18:20 PM
2- Crear programa que lea el contenido de un archivo de texto.
Pues ahí va:
#include <stdio.h>
main()
{
   FILE *fichero;
   char linea [80];
   fichero = fopen ("prueba2.txt" , "w");
   fputs("Esto es una linea\n", fichero);
   fputs("Esto es otra y esto es continuacion de lo anterior", fichero);
   fclose(fichero);
   fichero = fopen("prueba2.txt", "r");
   if ( fichero == NULL )
   printf("\nError sl sbrir el fichero\n");
   else
   printf("\nContenido del fichero prueba2.txt\n\n");
   while ( !feof(fichero) )
       {
           fgets(linea, 80, fichero);
           puts(linea);
       }
   fclose(fichero);
}


EI: juntando mensajes.

Cita de: Stakewinner00 en 20 Septiembre 2012, 18:20 PM
10- Un programa que escriba al revés las palabras. .
Entrada: hola
Salida: aloh

Sin uso de libreria string:
#include <stdio.h>
main()
{
    int i,j;
    char cadena [80];
    gets (cadena);
    for (i=0;cadena [i]!='\0';i++)
            ;
    for (j=i-1;j>=0;j--)
        printf ("%c",cadena [j]);
    return 0;
}
#1295
Programación C/C++ / Re: RETOS C++
27 Septiembre 2012, 16:11 PM
Cita de: Stakewinner00 en 27 Septiembre 2012, 15:21 PM
Para el reto de poner  4 numeros y decir el mas grande.
¿Viste en el anterior post la observación de introducir los cuatro a la vez separados por un espacio cada uno, como indica el enunciado?

Citar1-Un programa que cuente los caracteres que tiene un texto previamente introducido por el usuario (parece más fácil de lo que es)
ejemplo de entrada: "ho la" ejemplo salida:el texto tiene 5 caracteres
A lo cortito:
#include <stdio.h>
main()
{
   int i;
   char cadena [80];
   gets (cadena);
   for (i=0;cadena [i]!='\0';i++)
                 ;
   printf ("\nEl texto tiene %d caracteres.",i);
   return 0;
}
#1296
Programación C/C++ / Re: RETOS C++
27 Septiembre 2012, 01:32 AM
Cita de: Stakewinner00 en 20 Septiembre 2012, 18:20 PM
______
3- Un programa que diga el numero mas grande. El usuario ha de insertar 4 numeros separados por un espacio.
Si se toma al pie de la letra se ha de ingresar algo como "21 14 63 98", no ir ingresando los números uno a uno. ¿O no?.
En este supuesto propongo:

#include <stdio.h>

main()
{
   int N1,N2,N3,N4,mayor;
   char ch,cad[100]= "17 32 15 27";
   /*printf ("Introduzca cuatro numeros separados por un espacio:");
   gets (cad);*/
   sscanf(cad, "%d%c%d%c%d%c%d",&N1, &ch ,&N2,&ch, &N3,&ch, &N4  );
   printf ("%d  %d  %d  %d",N1,N2,N3,N4);
   mayor=N1;
   if (N2>N1) mayor =N2;
   if (N3>mayor) mayor =N3;
   if(N4> mayor) mayor =N4;
   printf ("\nmayor=%d",mayor);
   return 0;
}
[code]
[/code]
#1297
Programación C/C++ / Re: Programa matriz en C
25 Septiembre 2012, 00:50 AM
Cita de: luchofiattipo en 24 Septiembre 2012, 23:29 PM
La verdad que no me sale el ejercicio solo declare la matriz:
Tranquilo hombre, por algo hay que empezar. Tú código con algunas observaciones:
#include <stdio.h>
void main(void)
{
int mat[10][5],f,c,mult=0;
for(f=0;f<0;f++){ /*<===este for va de 1 a 9* pero de dos en dos/
for(c=0;c<5;c++) /*==)este for va dentro del anterior y de 1 a 10 */
{
mat[f][c]=0;/*<==aquí siempre saldría cero, debería ser mat[f][c]=f*c*/
}/*<===y te faltaría imprimirlos*/
}

Y aquí un código que hace lo que quieres, lo dejo con llaves para que lo veas mejor, sin y con matriz:
#include <stdio.h>
int main()
{
   int i,j,a[10][5];
   /*Sin matriz*/
   for (i=1;i<=9;i+=2)
       {
           for (j=1;j<=10;j++)
           {
              printf ("%2d  ",i*j );
           }
         puts ("\n");
       }
  /*Con matriz*/
  puts ("\n\n");
   for (i=1;i<=9;i+=2)
       {
           for (j=1;j<=10;j++)
           {
             a[i-1][j-1]=i*j; printf ("%2d  ",a[i-1][j-1] );
           }
         puts ("\n");
       }
   return 0;
}


SALUDOS ...Y ANIMO.....
#1298
Programación C/C++ / Re: Programa matriz en C
24 Septiembre 2012, 23:03 PM
Adelanta el código que tengas y veremos dónde podemos ayudarte.
Saludos!
#1299
Programación C/C++ / Re: Duda puntero en C
24 Septiembre 2012, 21:39 PM
Cita de: C-- en 24 Septiembre 2012, 04:24 AMPor qué en la salida obtengo:

2, 0, 6
6, 1314869318, -1856398723

¿Por qué con ese while pareciera que "desaparecieran" los valores de los punteros iniciales de b?
Previamente has igualado b a a+0,  seguido de asignar b+1 a a+1, por lo que en el while, al incrementar b pasa a apuntar a a+2=6  y posteriormente  b+1 y b+2 tomarían los valores de a+3 y a+4 ¡¡¡ y como no los tienes definidos se llena, de basura!!"!!!.
Fíjate que en el siguiente código ya no habrá "basura":

#include <stdio.h>
int main()
{
   int *a = (int*)malloc(sizeof(int)*3);
   int *b;
   *a = 2;
   *(a+1) = 4;
   *(a+2) = 6;
   *(a+3) = 8;
   *(a+4) = 9;
   b = a;
   *(b+1)=0;/* *(b+1)=*(a+1) = 0*/
    while(*(b++));/* ==> b= b++=*(a+2) = 6*/
   printf("%i, %i, %i\n",*a,*(a+1),*(a+2));
   printf("%i, %i, %i\n",*b,*(b+1),*(b+2));/* *b=*(a+2)=6,*(b+1)=*(a+3)=8,*(b+2)=*(a+4)=9*/
   free(a);
   getchar();
   return 0;
}[code]
Compáralo con el siguiente código:
[code=c]#include <stdio.h>
int main()
{
   int *a = (int*)malloc(sizeof(int)*3);
   int *b;
   *a = 2;
   *(a+1) = 4;
   *(a+2) = 6;
   *(a+3) = 8;
   *(a+4) = 9;
   b = a+1;
   *(b+1)=0;/* *(b+1)=*(a+2) = 6*/
    while(*(b++)) ;/* ==> b= b++=*(a+3) = 8*/
   printf("%i, %i, %i\n",*a,*(a+1),*(a+2));
   printf("%i, %i, %i\n",*b,*(b+1),*(b+2));/* *b=*(a+3)=8,*(b+1)=*(a+4)=9,*(b+2)=*(a+5)"BASURA"*/
   free(a);
   getchar();
   return 0;
}[code]
Saludos
[/code][/code][/code]
#1300
Programación C/C++ / Re: ordenar 3 numeros en C
23 Septiembre 2012, 18:21 PM
Cita de: VirucKingX en 28 Marzo 2008, 00:28 AMLo que no puedo sacar es el valor del medio  ;D haber si me dan una mano
Y con la idea de eKoutsh y cambiando los if por el condicional:
#include <stdio.h>
void main (void)
{
   float a,b,c,d,menor,medio,mayor;
   printf ("Ingre los valores :");
   scanf ("%f %f %f",&a,&b,&c);
   d = (a>c) ? a : c;
   mayor= (d>b) ? d : b;
   d = (a<c) ? a : c;
   menor = (d<b) ? d : b;
   medio=a+b+c-menor-mayor;
   printf ("El orden de menor a mayor : %g  %g  %g\n",menor,medio,mayor);
   return 0;
}[code]
[/code]