Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: Pandemia en 28 de Junio 2016, 21:12

Título: Funciones con y sin parametros en C. Signaturas Argumentos. LenguajeC CU00549F
Publicado por: Pandemia en 28 de Junio 2016, 21:12
Buenas amigos aquí dejo una posible solución al ejercicio CU00549F del curso de programacion en lenguaje C para dummies.

Me falta el ejercicio 1 que me tiene algo liado, cuando lo tenga lo pondré.

Citar
EJERCICIO Nº 2

Estudia el siguiente código y responde a las preguntas:

Código: [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
// Ejercicios curso C aprenderaprogramar.com
void stars2 (int n) {
    int i;
    for (i=1; i<=n; ++i) {
        printf ("*");
    }
    printf ("\n");
}

int main (void) {
    int a;
    a=10;
    stars2 (20);
    stars2 (a);
    stars2 (a+2);
    return (0);
}

Citar
a) ¿Cuántas funciones se declaran en este código? ¿Es main una función?

1 void stars2 (int n), no main es don de va el cuerpo del programa.

Citar
b) Explica cuántos parámetros reciben y de qué tipo son los parámetros para cada una de las funciones que existan en este código.

Un solo parametr de tipo int.

Citar
c) ¿Cuántas veces se invoca la función stars2 en el código? ¿Qué ocurre con cada una de esas invocaciones? ¿Cuál es el valor devuelto por la función stars2?

Se invoca 3 veces.
rimero aparece por pantalla una línea de 20 asteriscos, luego otra de 10 porque toma el valor de la variable a, y luego 12 porque toma el valor de la variable a + 2.
Tres líneas de asteriscos.


Citar
d) ¿Qué ocurre si escribimos stars2(0)? ¿Por qué?

Que en la primera línea desaparecen los asteriscos.
Al ponerle valor 0 la dejamos sin valor y aparecen por pantalla la línea de asteriscos.


Saludos....  ;D
Título: Re:Funciones con y sin parametros en C. Signaturas Argumentos. LenguajeC CU00549F
Publicado por: César Krall en 05 de Julio 2016, 15:21
Hola!

¿Ya has puesto el ejercicio 1 o lo tienes pendiente? Si lo vas a poner ponlo en este mismo hilo, a continuación de estos mensajes.

Del ejercicio 2:

main sí es una función (una función especial). Se llama función principal del programa y es donde va el cuerpo principal del programa desde donde se pueden llamar a otras funciones.

La función main no recibe parámetros.

Saludos!
Título: Re:Funciones con y sin parametros en C. Signaturas Argumentos. LenguajeC CU00549F
Publicado por: Pandemia en 11 de Julio 2016, 20:53
Buenas tardes al fin he podido continuar con los ejercicios, aquí dejo mi propuesta al primer ejercicio CU00549F

Citar
Escribe una función que use un bucle for para calcular la potencia de un número al que denominaremos base sobre otro número al que denominaremos exponente, ambos recibidos como parámetros.

Ejemplo: la función recibe como base el 4 y como exponente el 3. El resultado devuelto debe ser el resultado de multiplicar la base por sí misma 3 veces, en este ejemplo 4*4*4 = 64.

Escribe un programa donde se pida al usuario base y exponente y se muestre el resultado de calcular la potencia (base elevada al exponente). Tras esto, se debe pedir al usuario si quiere repetir con otros datos o no (s/n). En caso de que el usuario elija s se le volverá a pedir base y exponente, y en caso contrario el programa debe finalizar.

Código: [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

double potencia(double nBase, int nExponente);

int main()
{
    double base = 0;
    int exponente = 0;
    char respuesta = 's';
    int i=0;
    for (i=0;respuesta == 's' || respuesta == 's';i++){
    printf(" \nEscriba el n%cmero base de la potencia: ", 163);
    scanf("%lf", &base);
    printf(" \nEscriba el n%cmero exponente de la potencia: ", 163);
    scanf("%d", &exponente);
    printf("\nEl resultado de %.2lf elevado a  %d es: %.2lf\n", base, exponente, potencia(base, exponente));
    printf("\n\nDesea repetir la potencia con otros datos s/n: ");
    fflush(stdin);
    scanf("%c", &respuesta);
    }
    return 0;

}

double potencia(double nBase, int nExponente){
    int i = 0;
    double resultado = nBase;
    for (i=0; i<nExponente-1; i++){
        resultado = resultado * nBase;
    }
    return resultado;
}
Título: Re:Funciones con y sin parametros en C. Signaturas Argumentos. LenguajeC CU00549F
Publicado por: César Krall en 14 de Julio 2016, 14:03
Hola! Todo bien!