lunes, 8 de noviembre de 2010

C - Ejemplos sencillos

Lenguajes de Programación - Semana 12- PUNTOS EXTRA

Estas con algunas aplicaciones pequeñas escritas en C para pasar el rato :) que me gustaria compartirles

FRASE AL REVES

Toma una frase escrita desde el teclado, la almacena en un arreglo y despues utilizando la funcion strlen de la libreria string.h y con la ayuda de un ciclo for giramos la frase al reves.
//Leer una frase y escribirla al reves

#include
#include

int main(void) {
char frase[100];
int n;

printf("Introduce una frase y la escribire al reves [255 letras]\n");
printf("Cuando termines pulsa ENTER\n\n");
scanf("%[^\n]", frase);
printf("\n");

for (n=strlen(frase)-1; n>=0; n--)
printf("%c", frase[n]);

printf("\n\n");
return 0;
}

DESCARGA: frase.c

Para compilar: gcc -o frase frase.c
Para ejecutar: ./frase

EJECUCION


MULTIPLICACION

Este programa genera multiplicaciones aleatorias con la ayuda de la funcion rand y la libreria time.h que nos ayuda a variar los datos generados.
#include 
#include

DESCARGA: multaleatoria.c

Para compilar: gcc -o multaleatoria multaleatoria.c
Para ejecutar: ./multaleatoria

EJECUCION



RAIZ "X" DE UN NUMERO

Este programa resuelve la raiz "n" del numero que demos, por un metodo llamado de aproximacion.
// Programa para calcular una Raiz Cuadrada "x" de un numero "n"

#include

double absoluto(double x){
if(x < 0)
return(-1.0 * x);
return(x);
}

double potencia(double x, int n) {
int i;
double resultado = 1.0;
for(i = 0; i < n; i++)
resultado = resultado * x;
return(resultado);
}

double raizn(double R, int n) {
double x = 1.0, y = 2.0;
while(absoluto(x - y) > .00001) {
y = x;
x = (1.0 / n) * (((n - 1) * x) + (R / potencia(x, (n - 1))));
}
return(x);
}

int main(void) {

double raiz, valor, resultado;

printf("\t\t\tPROGRAMA PARA CALCULAR UNA RAIZ\n\n");
printf("Dame el numero para saber su raiz cuadrada -> ");
scanf("%lf", &valor);
printf("Dame el valor de la raiz -> ");
scanf ("%lf", &raiz);

resultado = raizn(valor, raiz);

printf("\nLa raiz %1.1lf del numero %1.1lf en = %1.2lf\n\n", raiz, valor, resultado);
return 0;
}


DESCARGA: raiz.c

Para compilar:gcc -o raiz raiz.c
Para ejecutar: ./raiz

EJECUCION



NUMEROS PRIMOS

Este programita generara una serie que contiene n numeros primos, la cantidad de resultados se puede controlar desde la constante MAX en el codigo fuente.
/* Programa que imprime "n" numeros primos de acuerdo al numero especificado 
en la constante MAX */

#include
#define MAX 50

int primo(int numero) {
int i;
for(i = 2; i < numero; i++)
if(numero % i == 0)
return 0;
return 1;
}

int main(void) {
int primos[MAX], i = 2, k = 0;
while(k < MAX) {
if(primo(i) == 1) {
primos[k] = i;
k = k + 1;
}
i = i + 1;
}
printf("\n\t\t\t%d numeros primos\n\n", MAX);
for(i = 0; i < MAX; i++)
printf("%d\t", primos[i]);
putchar('\n');
return 0;
}


DESCARGA: primos.c

Para compilar: gcc -o primos primos.c
Para ejecutar: ./primos

EJECUCION



SALUDOS!!! ^_^

No hay comentarios:

Publicar un comentario