Consultas, desarrollo de programas y petición de presupuestos:

jueves, 12 de julio de 2012

Prácticas de C: Bucles (II)

Vamos a pedir números por teclado al usuario. El usuario indicara que no quiere meter mas numeros introduciendo un cero. Mostraremos cuantos numeros a introducido (tienen que ser numeros enteros)
#include <stdio.h>
int main(int argc, char **argv)
{
/*Vamos a pedir números por teclado al usuario.
El usuario indicara que no quiere meter mas
* numeros introduciendo un cero.
* Mostraremos cuantos numeros a introducido*/
int numero=1; // le tengo que dar un valor inicial distinto de cero
int contador=0;
while (numero!=0) {
    printf("Introduce número (0 para salir):");
    scanf("%d",&numero);
     contador++;
}
printf("El numero de numeros introducidos es: %d ",contador);
return 0;
}

Introducir números por teclado y terminar cuando escriba el número cero. Y luego tenemos que mostrar el mayor número introducido.#include <stdio.h>

int main(int argc, char **argv)
{
    /*Introducir números por teclado y terminar cuando escriba el número cero.
     * Y luego tenemos que mostrar el mayor número introducido.*/
    int numero=1; // le tengo que dar un valor inicial distinto de cero
    int mayor=0;

/* esta zona es para dar el 1º valor de numero a mayor */
   printf("Introduce número (0 para salir):");
    scanf("%d",&numero);
        mayor=numero;
  
    while (numero!=0) {
        printf("Introduce número (0 para salir):");
        scanf("%d",&numero);
        if (mayor<numero) {
        mayor=numero;
            }
       
    }
    printf("El mayor ha sido: %d ",mayor);
    return 0;
}
Introducir numero por teclado hasta que introduzcamos cero y luego vamos a mostrar el mayor el menor y cuantos numeros se han introducido.
#include <stdio.h>

int main(int argc, char **argv)
{
    /*Introducir numero por teclado hasta
     * que introduzcamos cero y luego vamos a
     * mostrar el mayor el menor y cuantos numeros
     * se han introducido.*/

 int numero=1; // le tengo que dar un valor inicial distinto de cero
    int mayor=0;
    int menor=0;
    int contador=1;
    printf("Introduce número (0 para salir):");
    scanf("%d",&numero);
    menor=numero;
    mayor=numero;
   


    while (numero!=0) {
        printf("Introduce número (0 para salir):");
        scanf("%d",&numero);
        if (mayor<numero) {
            mayor=numero;
        }
       if (menor>numero) {
            menor=numero;
        }
       contador++;
    }
    printf("Total numero introducidos: %d \n",contador);
    printf("El mayor ha sido: %d \n",mayor);
    printf("El menor ha sido: %d \n",menor);
   
    return 0;
}
Introducir números por teclado, terminamos con cero. Y vamos a mostrar los 2 mayores
#include <stdio.h>

int main(int argc, char **argv)
{
    /*Introducir numero por teclado hasta
     * que introduzcamos cero y luego vamos a
     * mostrar el mayor el menor y cuantos numeros
     * se han introducido.*/

 int numero=1; // le tengo que dar un valor inicial distinto de cero
    int mayor1=0;
    int mayor2=0;
    int aux=0;
    int contador=0;
    printf("Introduce número (0 para salir):");
    scanf("%d",&numero);
    mayor1=numero;
    mayor2=numero;
   


    while (numero!=0) {
        printf("Introduce número (0 para salir):");
        scanf("%d",&numero);
        if (mayor2<numero) {
            mayor2=numero;
        }
       if (mayor2>mayor1) {
            aux=mayor1;
            mayor1=mayor2;
            mayor2=aux;
        }
       contador++;
    }
    printf("Total numero introducidos: %d \n",contador);
    printf("El mayor1 ha sido: %d \n",mayor1);
    printf("El mayor2 ha sido: %d \n",mayor2);
   
    return 0;
}
Nota:
Este tipo de problemas se resuelve del mismo modo (si los 3 primeros numeros mayores, o los 2 utlimos numeros menores... etc)
Introducir números por teclado y terminamos con cero. Indicar cuantos son pares, cuantos impares, el mayor de los pares y el mayor de los impares.
#include <stdio.h>

int main(int argc, char **argv)
{
    /*Introducir numero por teclado hasta
     * que introduzcamos cero y luego vamos a
     * mostrar el mayor el menor y cuantos numeros
     * se han introducido.*/

    int numero=1; // le tengo que dar un valor inicial distinto de cero
    int mayorpar=0;
    int mayorimpar=0;
    int aux=0;
    int contadorpar=0;
    int contadorimpar=0;


    while (numero!=0) {
        printf("Introduce número (0 para salir):");
        scanf("%d",&numero);
        if (numero%2==0) {
            // se trata de un numero par
            contadorpar++;
            if (mayorpar<numero) {
                mayorpar=numero;
            }
        } else {
            // se trata de impar...
            contadorimpar++;
            if (mayorimpar<numero) {

                mayorimpar=numero;
            }
       
    }
}
printf("Total numero pares introducidos: %d \n",contadorpar);
printf("Total numero impares introducidos: %d \n",contadorimpar);
printf("El mayor par ha sido: %d \n",mayorpar);
printf("El mayor impar ha sido: %d \n",mayorimpar);

return 0;
}
Introducimos números y terminamos con cero. Mostramos la suma de todos los números pares mayores de 25 y la cantidad de números que no han cumplido los requisitos anteriores.
#include <stdio.h>

int main(int argc, char **argv)
{
    /*Introducimos números y terminamos con cero.
     * Mostramos la suma de todos los números pares
     * mayores de 25 y la cantidad de números que no
     * han cumplido los requisitos anteriores.*/

    int numero=1; // le tengo que dar un valor inicial distinto de cero
    int sumamayorpar25=0;
    int cantidadnumeroquenocumplencondicion=0;


    while (numero!=0) {
        printf("Introduce número (0 para salir):");
        scanf("%d",&numero);
        if ((numero%2==0) && (numero>25)) {
            // se trata de un numero par y superior a 25
            sumamayorpar25+=numero;

        } else {
            cantidadnumeroquenocumplencondicion++;
            }
    }

    printf("Total suma numero pares introducidos y mayor que 25: %d \n",sumamayorpar25);
    printf("Total de numeros que no han cumplido la solucion: %d \n",cantidadnumeroquenocumplencondicion);

    return 0;
}

Vamos a sumar por un lado los números pares y por otro los numero impares entre 1 y 10, pero sin usar el operador %

No hay comentarios:

Publicar un comentario en la entrada