#include <stdio.h> /* stdio.h incluye entrada y salida*/ int main() { /*Abre main*/ int base; int exponente; printf("\nIntroduzca la base: "); scanf("%d", &base); printf("\nIntroduzca el exponente: "); scanf("%d", &exponente); /*El llamado a la funcion Potencia se hace desde printf*/ printf("\n%d elevado a la %d es: %d\n", base, exponente, Potencia(base, exponente)); return 0; } /* Cierra main*/ //////////////////////////////////////////////////// // INICIA FUNCION POTENCIA //////////////////////////////////////////////////// int Potencia( int x, int y ) { /* Abre potencia */ int i = 0; int pot = 1; while( i < y ) { // Abre while pot = pot*x; i++; } // Cierra while return (pot); } /* Cierra potencia*/
viernes, 30 de diciembre de 2011
Calcular la Enésima Potencia de un Número, en C
Este programa calcula cualquier potencia de un número entero. Recibe un par de enteros: la base y el exponente. El algoritmo es muy sencillo y se realiza todo en la función Potencia, consiste en un ciclo while que se realiza tantas veces como lo indique el exponente, la primera instrucción de ese ciclo se puede escribir como pot *= x, para hacerla un poco más eficiente.
martes, 27 de diciembre de 2011
Una Versión Limitada del Comando Unix WC
Este programa es una versión primitiva del comando wc de unix, el cual, entre otras cosas, cuenta las líneas, las palabras y los caracteres de un archivo. El cuadro siguiente muestra el resultado de ejecutar este programa con su mismo código como entrada. También se muestran los resultados que se obtienen con el comando wc.
Éste es el código:
[hernandez@localhost Programas]$ ./a.out < Programa.c El numero de lineas es: 42 El numero de palabras es: 171 El numero de caracteres es: 1038 [hernandez@localhost Programas]$ wc Programa.c 42 171 1038 Programa.c
Éste es el código:
/* Este programa debe contar el numero de lineas, el numero de caracteres, palabras y palabras especÃficas.*/ #include<stdio.h> #define ADENTRO 1 #define AFUERA 0 int main() { // Abre main int Caracteres = 0; int Palabras = 0; int Lineas = 0; int estado = AFUERA; int c; while ((c = getchar()) != EOF) /* Un error sutil dificil de detectar ocurre cuando se suprimen los parentesis que encierran la instruccion c = getchar() */ { // abre while // aqui se cuentan los caracteres Caracteres++; // Aqui se cuentan las lineas if ( '\n' == c ) Lineas++; // Aqui se cuentan las palabras if ( (' ' == c) || ('\t' == c) || ('\n' == c) ) estado = AFUERA; else if ( AFUERA == estado ) { // abre if estado = ADENTRO; Palabras++; } // Cierra if } // Cierra while printf("\n\nEl numero de lineas es: %d", Lineas); printf("\nEl numero de palabras es: %d", Palabras); printf("\nEl numero de caracteres es: %d\n\n", Caracteres); } // Cierra main
Búsqueda de un Carácter en un Archivo, en C
El siguiente programa recibe un texto y busca e imprime en qué línea y posición se encuentra un caracter dado. En este caso el programa busca la letra 'd', pero se puede cambiar para buscar cualquier caracter. El programa es muy sencillo, pero es un primer paso para hacer una búsqueda de una cadena. El siguiente es el resultado de ejecutar el programa con su mismo código como entrada.
#include<stdio.h> int main() { // Abre main int c, lineas = 1; int posicion = 0; int s = 'd'; // cambiar q por cualquier // caracter while ((c = getchar()) != EOF) { // abre while if ( '\n' != c ) { // Abre if posicion++; if (s == c ) { printf("\nEl caracter "); putchar(c); printf(" aparece en la posicion: %d de la linea %d", posicion, lineas); } } // Cierra if else { // Abre else lineas++; posicion = 0; } // Cierra else } // Cierra while printf("\n"); } // Cierra main
Suscribirse a:
Entradas (Atom)