Ejercicio 40
Hacer un algoritmo para un programa que calcule el cubo de un número ingresado.
Algoritmo
Los dos algoritmos hacen lo mismo, el algoritmo tiene una línea de menos.
Programa
#include<stdio.h>
float num;
float res, cubo(int x);
main()
{
printf("ingrese un número ");
scanf("%f",&num);
res=cubo(num);
printf("%f al cubo es: %f",num,res);
return 0;
}
float cubo(int x)
{return x*x*x;}
Ejercicio 41
Hacer un algoritmo para un programa que evalúe la expresión
Algoritmo
Inicio
Declare b, e
Declare potencia(m, n)
Leer b, e
Imprimir potencia(b, e)
Fin
Función potencia(m, n)
Inicio
Declare i, y
y 1
Desde i=1 hasta i<=abs(n) hacer
y y*m
si n<0 entonces y 1/y
fin si
Fin Desde
potencia y
Fin
Variables
potencia: es una función
b : valor ingresado
e : valor ingresado
m : toma valores de b
n : toma valores de e
i : contador
y : guarda el valor buscado.
Programa
#include<stdio.h>
#include <math.h>
int b,e;
float potencia(int m, int n);
main(void)
{
printf(" INGRESE DOS NÚMEROS.. ");
scanf("%d %d",&b,&e);
printf("%f",potencia(b,e));
}
float potencia(int m, int n)
{int i;
float y;
y=1;
for(i=1;i<=abs(n);i++)
y=y*m;
if(n<0) y=1/y;
return y;
}
Ejercicio 42
Hacer un algoritmo para un programa que calcule el área de círculo y longitud de circunferencia. Utilizar procedimientos.
Algoritmo
Inicio
Declare r;
Declare circulo(m)
Leer r
circulo(r)
Fin
Procedimiento circulo(m)
Inicio
Declare pi
Pi 3.1416
Imprimir pi*m*m
Imprimir 2*pi*m
Fin
Variables
r : valor ingresado
Circulo : funcion
m : toma el valor de r
pi : guarda el valor 3.1416
Programa
#include<stdio.h>
int r;
void circulo(int m);
main(void)
{
printf(" INGRESE EL VALOR DEL RADIO.. ");
scanf("%d",&r);
circulo(r); // llamada a un procedimiento
}
void circulo(int m) // procedimiento
{float pi;
pi=3.1416;
printf("AREA: %f \n",pi*m*m);
printf("LONGITUD: %f",2*pi*m);
}
Ejercicio 43
Hacer un algoritmo para un programa que intercambie los valores de dos variables.
Algoritmo
Inicio
Declare intercambio(x, y)
Declare temp, a, b
Leer a, b
Intercambio(a, b);
Fin
Procedimiento intercambio(x, y)
Inicio
Temp x
X y
Y temp
Imprimir x, y
Fin
Variables
temp. : temporal
a : valor ingresado
b : valor ingresado
x : toma el valor de a
y : toma el valor de b
intercambio: procedimiento
Programa
#include<stdio.h>
void intercambio(int x,int y);
int temp,a,b;
main(void)
{ printf("ingrese a: ");
scanf("%d",&a);
printf("ingrese a: ");
scanf("%d",&b);
intercambio(a,b);
}
void intercambio(int x, int y)
{
temp=x;
x=y;
y=temp;
printf("nuevos avlores de a:=%d y b:=%d",x,y);
}
COMENTARIO: En este caso vea usted la variable temp no esta declarada dentro del procedimiento intercambio. Esto significa que la variable temp es una variable global.
El ejercicio 43 no puede ser solucionado usando funciones, la única manera es a través de procedimientos, es decir una función que no devuelve ningún valor.
Ejercicio 44
Hacer un algoritmo para un programa que calcule el factorial de un número n
Algoritmo
Inicio
Declare n
Declare factorial(a)
Leer n
Imprimir factorial(n) //llamada a la función.
Fin
Función factorial(a)
Inicio
si a=0 o a=1 entonces factorial 1 //semilla 1
sino factorial a*factorial(a-1) //aquí el llamado es nuevamente a la función factorial(a), hasta que a=0 o a=1
Fin si
Fin
Variables
n : valor que se ingresa para calcular su factorial
a : toma el valor de n
factorial : función
Programa
#include<stdio.h>
int n,factorial(int a);
main(void)
{
printf(" INGRESE EL NÚMERO.. ");
scanf("%d",&n);
printf("%d",factorial(n)); // llamada a la función
}
int factorial(int a)
{
if(a==0 ||a==1) return 1; //semilla 1
else return a*factorial(a-1); //el llamado es nuevamente a la funcion factorial(a), hasta que a=0 o a=1.
}
EXPLICACIÓN: Mediante un ejemplo
Ejercicio 45
Hacer un algoritmo para un programa que calcule el enésimo elemento de la serie FIBONACII. 1, 1, 2, 3, 5, 8,13,...
Algoritmo
Inicio
Declare n
Declare fibonacii(x)
Leer n
Imprimir n, fibonacii(n)
}
Funcion fibonacii(x)
Inicio
si x=0 ó x=1 entonces fibonacii 1 //semilla
sino fibonacii fibonacii(x-2)+fibonacii(x-1); //esta llamando nuevamente a la función fibonacii(x) hasta que x=0 o x=1.
Fin si
Fin
Variables
n : enésimo elemento de la serie fibonacii
x : toma valores de n
fibonacii : función
Programa
#include<stdio.h>
int n;
int fibonacii(int x);
main(void)
{
printf(" INGRESE LA POSICION DEL ELEMENTO .. ");
scanf("%d",&n);
printf("FIBONACII DE %d es %d",n,fibonacii(n));
}
int fibonacii(int x)
{
if(x==0 || x==1)return 1; //semilla
else return fibonacii(x-2)+fibonacii(x-1); //está llamando nuevamente a la función fibonacii(x) hasta que x=0 o x=1.
}
EXPLICACIÓN
Sea la función fibonacii f(4)
Ejercicio 46
Hacer un algoritmo que calcule el enésimo elemento de la serie: 4, 6, 10, 16, 26, 42,...
Algoritmo
Inicio
Declare n
Declare elemento(x)
Leer n
Imprimir n, elemento(n)
Fin
Función elemento(x)
Inicio
Si x=0 entonces elemento 4 fin si //semilla
Si x=1 entonces elemento 6 //semilla
Sino elemento elemento(x-2)+elemento(x-1) //recursividad
Fin si
Fin
Variables
n : enésimo elemento de la serie
x : toma valores de n
elemento : función
Programa
#include<stdio.h>
int n;
int elemento(int x);
main(void)
{
printf(" INGRESE LA POSICIÓN DEL ELEMENTO .. ");
scanf("%d",&n);
printf("ELEMENTO DE %d es %d",n,elemento(n));
}
int elemento(int x)
{
if(x==0)return 4; //semilla
if(x==1)return 6; //semilla
else return elemento(x-2)+elemento(x-1); //recursividad
}
Ejercicio 47
Hacer un algoritmo para un programa que calcule el enésimo elemento de la serie: 1, 1, 2, 4, 7, 13, 24, 44,...
Algoritmo
Inicio
Declare n
Declare elemento(x)
Leer n
Imprimir n, elemento(n)
Fin
Función elemento(x)
Inicio
Si x=0 entonces elemento 1 Fin si//semilla
Si x=1 entonces elemento 1 Fin si//semilla
Si x=2 entonces elemento 2 //semilla
Sino elemento elemento(x-3)+elemento(x-2)+elemento(x-1);
//recursividad
Fin
Variables
n : enésimo elemento de la serie fibonacii
x : toma valores de n
elemento : función
Programa
#include<stdio.h>
int n;
int elemento(int x);
main(void)
{
printf(" INGRESE LA POSICIÓN DEL ELEMENTO .. ");
scanf("%d",&n);
printf("ELEMENTO DE %d es %d",n,elemento(n));
}
int elemento(int x)
{
if(x==0)return 1; //semilla
if(x==1)return 1; //semilla
if(x==2)return 2; //semilla
else return elemento(x-3)+elemento(x-2)+elemento(x-1); //recursividad
}
|
1. Algoritmos en QBASIC. Manual Este manual de QBASIC es una colección linkografica y bibliográfica sobre el uso... [26/10/09] |
12.730 | ||||
|
2. Introducción al lenguaje Pascal Pascal es un lenguaje de alto nivel y de propósito general (es aplicable a un gran... [01/03/06] |
40.127 | ||||
|
3. Introducción al lenguaje HTML ¿Te interesa entrar al mundo de la programación web ? ¡Entonces este curso de... [14/04/11] |
739 |
|
|||