Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: mitroll025 en 29 Mayo 2012, 02:01 am



Título: ayuda 2 ejerciocios en c
Publicado por: mitroll025 en 29 Mayo 2012, 02:01 am
hola!!gracias por leer!!
mi duda es la siguiente,no es que no me salga el ejercicio o que no termine de entenderlo es mas creo que es algo teorio y no practico lo que me inquieta!!ahi va!

//Escribir un programa C que lea exactamente 8 números y luego escriba la suma de todos ellos

#include <stdio.h>
#include <conio.h>
int main()
{
    int a;
    int suma=0;

    for(int i=1; i<=8; i++){//no entiendo porque pone la letra i si no es una variable ni tampoco el sentido de meter el int ahi, seguro que es algo sencillo pero no lo entiendo

        scanf("%d",&a);
        suma+=a;

    }
    printf ("Suma= %d",suma);
getch();
return 0;

}
aca el programa imprime lo correcto pero no entiendo porque esta expresado asi el ciclo for //
    for(int i=1; i<=8; i++)
**********************************************************************
la otra duda es de este
//Escribir un programa que escriba todos los múltiplos de 3 del número 1 al 100
#include<stdio.h>
#include<conio.h>
int main()
{

   

    for (int i;i<=100;i+=3)
    printf ("%i \t",i);
   
     

 

        getch();
        return 0;
        }
imprime esto
2       5       8       11      14      17      20      23      26      29
32      35      38      41      44      47      50      53      56      59
62      65      68      71      74      77      80      83      86      89
92      95      98

mi duda es como hago para que arranque de 1 y no de 2!

desde ya mil gracias!!


Título: Re: ayuda 2 ejerciocios en c
Publicado por: STANHMAL en 29 Mayo 2012, 02:40 am
Hola que tal,

A)

Código
  1. for(int i=1; i<=8; i++)
  2.  

Bien, el for es un bucle con contador.

El for esta compuesto de 3 partes (por decirlo de alguna manera).

1. El inicio de la variable contador.
2. la condición para que el bucle se cumpla.
3. el incremento del contador.

1 - En el caso de este for, la variable contador se llama i y comienza desde 1.

2 - La condición para que el bucle se cumpla, es que esta condición me genere algo verdadero, en este caso la condición me dice que mientras que se cumpla que la variable i sea menor-igual que 8.

3 - La variable indicada sufre un incremento o decremento (depende la situación), en este caso la variable i se incrementa de 1 en 1.



B)

Código
  1. for (int i;i<=100;i+=3)
  2.  

Acá el problema que tienes es que declaras la variable, pero no la inicias y comienzas a trabajar con la misma, lo que debes de hacer es iniciar la variable en 1, de la siguiente forma:

Código
  1. for (int i=1;i<=100;i+=3)
  2.  



C)

Ahora procedo a explicarte porque el int esta dentro del for.

En C++ es posible declarar variables en distintos lugares, pero con los compiladores de ahora (la mayoría), es posible hacer lo mismo en C aunque no debería de ser así.



Espero haberme echo entender.

$4!u2


Título: Re: ayuda 2 ejerciocios en c
Publicado por: mitroll025 en 29 Mayo 2012, 02:48 am
muchisimas gracias!!!mas claro imposible!!sabia que era algo teorico que por lo que veo "mas clara que algua" la tenes!!gracias kpo!