Sie sind auf Seite 1von 9

Solución del Ejercicio - Área de un Triángulo (en C)

Resuelto con printf y scanf

1º) Pida por teclado la base (dato real) de un triángulo.


2º) Pida por teclado la altura (dato real) de un triángulo.
3º) Calcule el área del triángulo.
4º) Muestre por pantalla el resultado (dato real).

En pantalla:

Introduzca base: 1.2


Introduzca altura: 4.5
El área del triángulo es: 2.7

Nota: Área de un triángulo = base * altura / 2


Código fuente del programa:

#include <stdio.h>

int main()
{
float altura, area, base;

printf( "Introduzca base: " );


scanf( "%f", &base );
printf( "Introduzca altura: " );
scanf( "%f", &altura );

area = base * altura / 2;


printf( "El area del triangulo es: %f", area );

return 0;
}

Una segunda solución es:

#include <stdio.h>

int main()
{
float altura, base;

printf( "Introduzca base: " );


scanf( "%f", &base );
printf( "Introduzca altura: " );
scanf( "%f", &altura );

printf( "El area del triangulo es: %f", base * altura / 2 );

return 0;
}
Solución del Ejercicio - Suma de Dos Números
(en C)
Resuelto con la Instrucción if else
Resolver con la Instrucción if else
Escribir un programa, en lenguaje C, que:

1º) Pida por teclado dos números (datos enteros).


2º) Calcule la suma de los números introducidos por el usuario.
3º) Muestre por pantalla:

"LA SUMA SÍ ES MAYOR QUE CERO.", en el caso de que sí lo sea.


"LA SUMA NO ES MAYOR QUE CERO.", en el caso de que no lo sea.

En pantalla:

Introduzca primer número (entero): 14


Introduzca segundo número (entero): -17
LA SUMA NO ES MAYOR QUE CERO.

Código fuente del programa:

#include <stdio.h>

int main()
{
int a, b, suma;

printf( "Introduzca primer numero (entero): " );


scanf( "%d", &a );
printf( "Introduzca segundo numero (entero): " );
scanf( "%d", &b );
suma = a + b;

if ( suma > 0 )
printf( "LA SUMA SI ES MAYOR QUE CERO." );
else
printf( "LA SUMA NO ES MAYOR QUE CERO." );

return 0;
}

Una segunda solución es:

#include <stdio.h>
int main()
{
int a, b;

printf( "Introduzca primer numero (entero): " );


scanf( "%d", &a );
printf( "Introduzca segundo numero (entero): " );
scanf( "%d", &b );
if ( a + b > 0 )
printf( "LA SUMA SI ES MAYOR QUE CERO." );
else
printf( "LA SUMA NO ES MAYOR QUE CERO." );

return 0;
}
Ejercicio - Cambio de Signo (en C)
Resolver con la Instrucción if
Escribir un programa, en lenguaje C, que:

1º) Pida por teclado un número (dato real).


2º) Muestre por pantalla el número introducido, pero, cambiado de signo y, sólo en el caso de que el
número no sea mayor o igual que cero.

En pantalla:

Introduzca número (real): -9.6


9.6

Introduzca número (real): 7.11

Resuelto con la Instrucción if


Código fuente del programa:

#include <stdio.h>
int main()
{
float numero;

printf( "Introduzca numero (real): " );


scanf( "%f", &numero );

if ( numero < 0 )
printf( "%f", -numero );

return 0;
}
Resolver con la Instrucción switch
Escribir un programa, en lenguaje C, que:

1º) Pida por teclado el resultado (dato entero) obtenido al lanzar un dado de seis caras.
2º) Muestre por pantalla el número en letras (dato cadena) de la cara opuesta al resultado obtenido.

Nota 1: En las caras opuestas de un dado de seis caras están los números: 1-6, 2-5 y 3-4.

Nota 2: Si el número del dado introducido es menor que 1 ó mayor que 6, se mostrará el mensaje:
"ERROR: Número incorrecto.".

En pantalla:

Introduzca número del dado: 5


En la cara opuesta está el "dos".

Introduzca número del dado: 8


ERROR: Número incorrecto.

Resuelto con la Instrucción switch


Código fuente del programa:

#include <stdio.h>

int main()
{
int numero;

printf( "Introduzca numero del dado: " );


scanf( "%d", &numero );

switch ( numero )
{
case 1 : printf( "En la cara opuesta esta el \"seis\"." );
break;
case 2 : printf( "En la cara opuesta esta el \"cinco\"." );
break;
case 3 : printf( "En la cara opuesta esta el \"cuatro\"." );
break;
case 4 : printf( "En la cara opuesta esta el \"tres\"." );
break;
case 5 : printf( "En la cara opuesta esta el \"dos\"." );
break;
case 6 : printf( "En la cara opuesta esta el \"uno\"." );
break;
default : printf( "ERROR: Numero incorrecto." );
}

return 0;
}

Una segunda solución es:

#include <stdio.h>
#include <string.h>

int main()
{
char letras[7];
int numero;
printf( "Introduzca numero del dado: " );
scanf( "%d", &numero );
switch ( numero )
{
case 1 : strcpy( letras, "seis" );
break;
case 2 : strcpy( letras, "cinco" );
break;
case 3 : strcpy( letras, "cuatro" );
break;
case 4 : strcpy( letras, "tres" );
break;
case 5 : strcpy( letras, "dos" );
break;
case 6 : strcpy( letras, "uno" );
}
if ( numero >= 1 && numero <= 6 )
printf( "En la cara opuesta esta el \"%s\".", letras );
else
printf( "ERROR: Numero incorrecto." );

return 0;
}
Ejercicio - Suma o Multiplicación de Dos
Números (en C)
Resolver con Anidamiento de Instrucciones Alternativas
Escribir un programa, en lenguaje C, que:

1º) Pida por teclado dos números (datos enteros).


2º) Calcule la suma y multiplicación de ambos números.
3º) Muestre por pantalla:

 "La suma es mayor.", en caso de que sea mayor que la multiplicación de ambos números.
 "La multpilicación es mayor.", en caso de que sea mayor que la suma de ambos números.
 "La suma y multiplicación son iguales.", en caso de que así sea.

En pantalla:

Introduzca primer número (entero): -2


Introduzca segundo número (entero): 3
La suma es mayor.

Introduzca primer número (entero): 2


Introduzca segundo número (entero): 2
La suma y multiplicación son iguales.

Resuelto con Anidamiento de Instrucciones Alternativas


Código fuente del programa:

#include <stdio.h>

int main()
{
int a, b, suma, multiplicacion;

printf( "Introduzca primer numero (entero): " );


scanf( "%d", &a );
printf( "Introduzca segundo numero (entero): " );
scanf( "%d", &b );

suma = a + b;
multiplicacion = a * b;
if ( suma > multiplicacion )
printf( "La suma es mayor." );
else

/* Inicio del anidamiento */


if ( multiplicacion > suma )
printf( "La multiplicacion es mayor." );
else
printf( "La suma y multiplicacion son iguales." );
/* Fin del anidamiento */

return 0;
}

Una segunda solución es:

#include <stdio.h>
int main()
{
int a, b;

printf( "Introduzca primer numero (entero): " );


scanf( "%d", &a );
printf( "Introduzca segundo numero (entero): " );
scanf( "%d", &b );
if ( a + b > a * b )
printf( "La suma es mayor." );
else

/* Inicio del anidamiento */


if ( a * b > a + b )
printf( "La multplicacion es mayor." );
else
printf( "La suma y multiplicacion son iguales." );
/* Fin del anidamiento */

return 0;
}
Ejercicio - Área de una Esfera (en C)
Resolver con la Instrucción while
Escribir un programa, en lenguaje C, que:

1º) Pida por teclado el radio (dato real) de una esfera.


2º) En el caso de que el radio sea menor o igual que 0, muestre por pantalla el mensaje:

"ERROR: El radio debe ser mayor que cero.".

3º) Repita los pasos 1º y 2º, mientras que, el radio introducido sea incorrecto.
4º) Muestre por pantalla:

"El área de una esfera de radio <radio> es: <área>".

Nota 1: Área de una esfera = 4 * pi * radio2

Nota 2: Utilice un bucle mientras (while).

En pantalla:

Introduzca radio: 3.6


El área de la esfera de radio 3.6 es: 162.860129

Introduzca radio: -2.4


ERROR: El radio debe ser mayor que cero.
Introduzca radio: 2.4
El área de la esfera de radio 2.4 es: 72.382279

Resuelto con la Instrucción while


Código fuente del programa:

#include <math.h>
#include <stdio.h>

int main()
{
float radio;

printf( "Introduzca radio: " );


scanf( "%f", &radio );

/* Filtramos el radio */

while ( radio <= 0 )


{
printf( "ERROR: El radio debe ser mayor que cero." );
printf( "\nIntroduzca radio: " );
scanf( "%f", &radio );
}

printf( "El area de la esfera de radio %f es: %f",


radio, 4 * 3.141592 * pow( radio, 2 ) );

return 0;
}
Ejercicio - Media Aritmética de Números
Introducidos (en C)
Resolver con la Instrucción do while
Escribir un programa, en lenguaje C, que:

1º) Pida por teclado un número (dato entero).


2º) Muestre por pantalla los mensajes:

 Ha introducido <cantidad_de_números> número(s)


 La suma es <suma>

3º) Pregunte al usuario si desea introducir otro o no.


4º) Repita los pasos 1º, 2º y 3º, mientras que, el usuario no responda 'n' de (no).
5º) Muestre por pantalla la media aritmética (dato real) de los números introducidos.

Nota: Utilice un bucle hacer mientras (do while).

En pantalla:

Introduzca un número entero: 3


Ha introducido 1 número(s)
La suma es 3

¿Desea introducir otro (s/n)?: s


Introduzca un número entero: 7
Ha introducido 2 número(s)
La suma es 10

¿Desea introducir otro (s/n)?: s


Introduzca un número entero: 6
Ha introducido 3 número(s)
La suma es 16

¿Desea introducir otro (s/n)?: s


Introduzca un número entero: 13
Ha introducido 4 número(s)
La suma es 29

¿Desea introducir otro (s/n)?: n


La media aritmética es 7.25

Introduzca un número entero: 8


Ha introducido 1 número(s)
La suma es 8

¿Desea introducir otro (s/n)?: n


La media aritmética es 8.000000

Solución del Ejercicio - Media Aritmética de


Números Introducidos (en C)
Resuelto con la Instrucción do while
Código fuente del programa:

#include <stdio.h>

int main()
{
char seguir;
int acumulador, contador, numero;

acumulador = 0;
contador = 0;
do
{
printf( "Introduzca un numero entero: " );
scanf( "%d", &numero );

acumulador += numero;
contador++;

printf( "Ha introducido %d numero(s).", contador );


printf( "\nLa suma es %d", acumulador );

printf( "\n\nDesea introducir otro numero (s/n)?: " );


fflush( stdin );
scanf( "%c", &seguir );
} while ( seguir != 'n' );
printf( "La media aritmetica es %f",
( float ) acumulador / contador );
return 0;
}

Ejercicio - Cubos de Números Pares (en C)


Resolver con la Instrucción for
Escribir un programa, en lenguaje C, que muestre por pantalla los cinco primeros números naturales
pares elevados al cubo.

Nota 1: Cubo de un número = número3

Nota 2: Utilice un bucle para (for).

En pantalla:

8 64 216 512 1000

Resuelto con la Instrucción for


Código fuente del programa:

#include <math.h>
#include <stdio.h>

int main()
{
int numero;
for ( numero = 2 ; numero <= 10 ; numero += 2 )
{
printf( "%.f ", pow( numero, 3 ) );
}

return 0;
}
Ejercicio - Cantidad y Suma de Números
Enteros (en C)
Resolver con Anidamiento de Instrucciones Repetitivas y Alternativas
Escribir un programa, en lenguaje C, que:

1º) Pida por teclado un número (dato entero).


2º) Repita el paso 1º, mientras que, el número introducido sea distinto de cero.
3º) Muestre cuántos números mayores que cero han sido introducidos por el usuario, así como, la
suma de todos ellos.

En pantalla:

Introduzca un número entero: 4


Introduzca un número entero: 8
Introduzca un número entero: -6
Introduzca un número entero: 12
Introduzca un número entero: 0
Ha introducido 3 número(s) mayor(es) que cero.
La suma es 24

Introduzca un número entero: -3


Introduzca un número entero: 0
Ha introducido 0 número(s) mayor(es) que cero.
La suma es 0

Resuelto con Anidamiento de Instrucciones Repetitivas y Alternativas


Código fuente del programa:

#include <stdio.h>
int main()
{
int numero, contador, suma;

printf( "Introduzca un numero entero: " );


scanf( "%d", &numero );

contador = 0;
suma = 0;

while ( numero != 0 )
{
if ( numero > 0 )
{
contador++;
suma += numero;
}

printf( "Introduzca un numero entero: " );


scanf( "%d", &numero );
}

printf( "Ha introducido %d numero(s) mayor(es) que cero.",


contador );
printf( "\nLa suma es %d", suma );

return 0;
}

Das könnte Ihnen auch gefallen