Menú principal

Programas básicos en C, C++

Publicado por cazador.asesino, Julio 19, 2008, 07:13:58 PM

Tema anterior - Siguiente tema

cazador.asesino

Aquí espero que publiquemos programas sencillos en c c++.. 8)
--->   142857   <---


cazador.asesino

Aquí unos programas sencillos:

Cálculo de la varianza de n números:  http://www.4shared.com/file/55851607/4dc420df/Varianza.html

Uso de sleep: http://www.4shared.com/file/55851758/a1cea33c/Sleep.html

Introducción al uso de nodos para su posterior uso en listas: http://www.4shared.com/file/55851963/17af047d/Listas_000.html


...Continuará...
--->   142857   <---


dhararon

#2
ok  este es el source de sleep
como su nombre lo dice (dormir), sirve para darle una pausa on continuacion a un programa realizado en C
//Este programa nos muestra el uso de sleep

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>

int main() {

     printf(Tu nombe aparecera en 5 segundos);

     Sleep(5000);//Pausa 5 segundos

     printf(Saludos);

     system(PAUSE);

     return 0;


[img]http://ldcmx.info/recursos/imgpromo/mxoneuser.jpg[/img][img]http://img223.imageshack.us/img223/4947/devcsf4.jpg[/img]


cazador.asesino

#3
//Descripcion:      Programa para determinar el mayor de dos numeros

#include <iostream.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

int main()
{
   int A, B;
   gotoxy(15,2);//Nos llevas a las coordenadas x , y
                //para escribir o leer alli
   cout<<COMPARACION DE NUMEROS\n\n; //Uso similar al printf(...
   cout<< A = ;
   cin>>A;
   cout<< \nB = ;
   cin>>B;
   gotoxy(2,8);
   //scanf(%d%d, &A, &B);//scan lee valores
   if(A>B)
   {
      printf(A es el mayor\n);
   }
   if(B>A)
   {
      printf(B es el mayor\n);
   }
   if(B==A)
   {
      printf(B es igual que A\n);
   }
   getch();//Espera la lectura de un caracter, lo uso para pausar
   return 0;
}
--->   142857   <---


cazador.asesino

/* Descripcion:    Calcula el valor de e a partir de la serie
*                  e = 1 + 1/1! + 1/2! + 1/3! + ... + 1/N!  */

#include <iostream.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

int main()
{
  int Deno, Index;
  float Suma, Termi, Error;
  Suma  = 1.0;//valor acumulado
  Deno  = 1; //Denominador
  Index = 1; //cantidad de términos
  Termi = 1; //Término n
  gotoxy(15,2);
  cout<<CALCULO DE e\n\nError: ;
  cin>> Error; //Obtener error
  while(Termi > Error) //Lee términos mientras sean mayores que el error
  {
    Termi = 1.0/Deno;
    Suma  = Suma + Termi;
    Index = Index + 1;
    Deno = Deno*Index;
  }
  cout<<e  =  <<Suma<< endl;
  system(PAUSE);
  return 0;
}
--->   142857   <---


dhararon

este es un pequeño creador de textos, soporta 30 caracteres en el nombre y 500 en el texto.
para cambiar de extension ir a tu escrito.txt y quitar txt, poner alli la extension, (.doc, .ppx, .txt, etc)
espero sacar una nueva muy pronto,


/*creada por dhararon*/
#include<stdio.h>
#include<stdlib.h>
/*version beta*/
main(){
      char nom[30];
      char nom2[500];
system(title CREADOR DE TEXTOS BETA);  /*este es el titulo del programa el cual se pondra en vez de la direccion*/

FILE *archivo;  /*es del tipo archivo FILE indica que se va a menejar archivos*/

archivo=fopen(tu escrito.txt, w);/*archivo es apuntador asi que se le acigna el valor de abrir un archivo con nombre tu archivo.txt la w es para crear uno nuevo*/

printf(ingresa un nombre:  );
gets(nom);/*gets sirve para sustituir a scanf, se usa con strings ejem,  char[10]*/

system (cls);/*limpia la pantalla*/
printf(ingresa tu texto:  );
gets (nom2);


fprintf(archivo, %s\n\n %s \n\nhecho por DHARARON, nom, nom2);/*escribe dentro del archivo*/

fclose(archivo);/*cierra el archivo*/

system (cls);
printf(programa hecho por dhararon);
system(pause>nul);


}

[img]http://ldcmx.info/recursos/imgpromo/mxoneuser.jpg[/img][img]http://img223.imageshack.us/img223/4947/devcsf4.jpg[/img]


cazador.asesino

// Cuenta letras hasta que se pulse Ctrl + z

#include <iostream.h>
#include <stdio.h>
#include <ctype.h> //uso de mayúsculas y minúsculas

int main()
{
  int consonantes = 0;
  int vocales = 0;
  int digitos = 0;
  int mayusculas = 0;
  int minusculas = 0;
  int espacios = 0;
  int puntuacion = 0;
  char c; // caracteres leídos desde el teclado

  cout << Contaremos caracteres hasta que se pulse ^Z
        << endl;
  while((c = getchar()) != EOF)
  {
      if(isdigit(c)) digitos++;
      else if(isspace(c)) espacios++;
      else if(ispunct(c)) puntuacion++;
      else if(isalpha(c))//es alfanumerico?
      {
        if(isupper(c)) mayusculas++; else minusculas++;
        switch(tolower(c))
        {
            case 'a':
            case 'e':
            case 'i':
            case 'o':
            case 'u':
              vocales++;//si es vocal aumenta en uno
              break;
            default:
              consonantes++;
        }
      }
  }
  cout << Resultados: << endl;
  cout << Dígitos:    << digitos << endl;
  cout << Espacios:    << espacios << endl;
  cout << Puntuación:  << puntuacion << endl;
  cout << Alfabéticos: << mayusculas+minusculas << endl;
  cout << Mayúsculas:  << mayusculas << endl;
  cout << Minúsculas:  << minusculas << endl;
  cout << Vocales:    << vocales << endl;
  cout << Consonantes: << consonantes << endl;
  cout << Total: << digitos + espacios + vocales + consonantes + puntuacion<< endl;
  cin.get();
  return 0;
}
--->   142857   <---


cazador.asesino

Este programa nos dirá si un número cualquiera  pertenece a la sucesión de Fibonacci y además si es primo o no.

#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>

int main ()
{
    int M, fib, a, b, primo, i;
    cout<<(Ingrese un numero\n\nM=);
    scanf(%d,&M);//Lectura del número
    cout<<(\n);
    //Será un número de Fibonacci
    fib=1;
    a=1;
    if(M==1)//Si es uno.
    {
    cout<<(Es un numero de fibonacci\n);
    }
    while(M>=fib)//Hacer mientras sea mayor o igual al
    {            // número de fibonacci fib
    if(M==fib)
    {
      cout<<(Es un numero de Fibonacci\n);
    }
    //Calculo el siguiente número de fibonacci
    b=fib;
    fib=fib+a;
    //El anterior lo asigno a la variable a
    a=b;
    }
    //¿Será un número primo?
   
    i=M/2;
    primo=1;
    while(i>1)
    {
    if(M%i==0)
    {
      primo=0;
    }
    i=i-1;
    }
    if(primo==1)
    {
    cout<<(El numero es primo\n);
    }
    else
    {
    cout<<(El numero no es primo\n);
    }
    system(pause);
    return 0;
}


Así debería quedar en caso de que el número sea primo y de Fibonacci.



8) 142857  8)
--->   142857   <---


Red Mx

la serie de fibonaci es clasi tengo muchos trabajos de escuela unos en c o c++ usando la libreria de graficos  de cuando uniciaba en C y es que si los encuentro los publico en un pack.
[center][url=http://www.megawb.com][img]http://megawb.com/src/logo.png[/img][/url]

[b]Dominios, Hosting Y Desarrollo Web, con la calidad de LDC.[/b]
[/center]


Red Mx

Una calcu en C  no puedo encontrar mis programas basicos.

/*
Calculadora.c
-------------

Autores: Mois‚s Seisdedos y Samuel Seisdedos
Descripci¢n: Es una calculadora q calcula Suma, Resta, Multiplicaci¢n,
Divis¡on y Raiz Cuadrada, todas las funciones con opci¢n de usar decimales.

Este fichero ha sido descargado desde:
http://www.elrincondelc.com

El Rinc¢n del C - Cusos de programaci¢n, c¢digo fuente, informaci¢n
sobre compiladores, art¡culos, listas de correo para consultas,...
*/

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>  // esta librería suena bastante mal verdad? jejeje
#include <math.h>



// PROGRAMA PRINCIPAL
int main()
    {
double a, b, resultado;
int Opcion;


double Suma (double , double );
double Resta (double , double );
double Multiplicacion (double , double );
double Division (double , double );
double Raiz_cuadrada (double );

    clrscr();
printf(\t\tCALCULADORA\n\n);
printf(\t 1.- Suma\n);
printf(\t 2.- Resta\n);
printf(\t 3.- Multplicaci¢n\n);
printf(\t 4.- Division\n);
printf(\t 5.- Raiz cuadrada\n);
printf(\t\t Elija su Opci¢n:);
scanf(%d, &Opcion);
switch (Opcion)
{
  case 1:
  resultado = Suma (a, b);
  break;

    case 2:
  resultado = Resta (a, b);
  break;


  case 3:
  resultado = Multiplicacion (a, b);
  break;


  case 4:
  resultado = Division (a, b);
      break;

      case 5:
  resultado = Raiz_cuadrada (a);
  break;


  }

  printf(\n El resultado de la opci¢n elegida es: %lf, resultado);
  getchar();
  getchar();
  return 0;
}




// A partir de aquí pasamos a detallar las operaciones que son llamadas
// desde el programa principal.
// Ponemos double en la suma porque lo que vamos a devolver es un numero
// de alta precision... podríamos poner int, pero entonces tendríamos que
// declarar otras variables para operar con la division y la raiz
// ya que por ejemplo con la división, siempre pueden aparecer numeros
// decimales, y si ponemos int, entonces tendríamos problemas porque el
// compilador dará un warning, pero si lo ejecutas y salen decimales,
// el ordenador se colgará...
double Suma (double a, double b)
{
  double c;
    printf(\n introduzca el primer sumando:);
    scanf (%lf, &a);
    printf(\n introduzca el segundo sumando:);
    scanf (%lf, &b);
    c = a + b;
    return (c); //así asignamos a la variable Suma, el valor de c=a+b
}

double Resta (double a, double b)
{
double c;
    printf(\n introduzca el primer restando:);
    scanf(%lf, &a);
    printf(\n introduzca el segundo restando:);
    scanf(%lf, &b);
    c = (a-b);
    return (c);
}

double Multiplicacion (double a, double b)
{
double c;
    printf(\n introduzca el primer multiplicando:);
    scanf(%lf, &a);
    printf(\n introduzca el multiplicador:);
    scanf(%lf, &b);
    c = a * b;
    return (c);
}

double Division (double a, double b)
{
double c;
    printf(\n introduzca el primer dividendo:);
    scanf(%lf, &a);
    printf(\n introduzca el segundo dividendo:);
    scanf(%lf, &b);
    c = a / b;
    return (c);
}

double Raiz_cuadrada (double a)
{
double c;
    printf(\n introduzca la cifra a la que efectuar la raiz: );
    scanf (%lf, &a);
    c = sqrt (a);
    return (c);
}
[center][url=http://www.megawb.com][img]http://megawb.com/src/logo.png[/img][/url]

[b]Dominios, Hosting Y Desarrollo Web, con la calidad de LDC.[/b]
[/center]


Arturo_zero

Si entendiera algo de programacion seguiría tus pasos red jejeje


cazador.asesino

Esta aplicación nos pide el ingreso de un usuario y su respectivo password, para este caso el usuario es LDC_USER y la clave de acceso es MX ONE.

El usuario dispone de 3 intentos para ingresar su contraseña en los cuales su contraseña aparece en forma de asteriscos, caso contrario el programa finaliza.


/**
*  NombreProg:  Password
*  Descripcion: Obtiene contraseña y muestra asteriscos
*  Autor: Cazador Asesino
*  Fecha:  2 de Noviembre de 2008
*/

#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <stdio.h>

int main()
{
int num_int=0,id=0,i;
char user[10],pass[10];
char user_v[10]=LDC_USER,pass_v[10]=MX ONE;

//Pantalla de Ingreso de datos
gotoxy(10,2);
cout<<Ingrese sus datos;
gotoxy(10,3);
cout<<=============;
gotoxy(5,5);
cout<<Usuario:;
gotoxy(5,7);
cout<<Password:;
gotoxy(20,10);
cout<<Numero de Intentos:;
//Fin de Pantalla Ingreso de datos

//Lectura de los valores de usuario

do{
num_int=num_int+1;
gotoxy(14,5);
cout<<                ;
gotoxy(16,7);
cout<<                ;

gotoxy(14,5);
strcpy(user,          );
gets(user);

gotoxy(16,7);
strcpy(pass,          );
i=0;
do{
//gets(pass);
pass[i]=getch();
cout<<*;
i=i+1;
}while(pass[i-1] != '\r');
pass[i-1]='\0';

gotoxy(40,10);
cout<<num_int; // Contador del número de Intentos

if(strcmp(user,user_v)==0 && strcmp(pass,pass_v)==0)
{
id=1;//strcmp <- Compara cadenas de caracteres
}

}while(id==0 && num_int<3);

if(id==0)
{
gotoxy(5,12);
cout<<Numero de Intentos exedidos, intente mas tarde;
getche();//Pausa -Espera una pulsación del teclado
exit(1);
}

if(id==1)
{
gotoxy(5,12);
cout<<Bienvenido, se<<char(-92)<<or <<user;
getche();
exit(1);
}

  getch();
  return 0;
}
--->   142857   <---


makubex

Hola a todos:

Estan muy interesantes los programas, pero me tope con una complicación a la hora de compilarlos: No es código ANSI y por tanto no es portable a linux, por lo que veo todos usaron el compilador de Borland Turbo C++ en el que se puede utilizar las sentencias gotoxy(); pero bueno todo fue cosa de ir depurando.

Les dejo un programa que invierte una cadena de texto... Tambien pueden implementarlo con cualquier cadena de texto, pidiendo la variable previamente. Esta compilado en CodeBlocks por lo que no habra problema si lo quieren compilar en linux.


/* Archivo InvierteCadena.c Estilo ANSI C */
#include <stdio.h>
#include <string.h>

int main (){
    char *cadena = MakubeX;
    int longitud, contador;

    longitud = strlen (cadena);
    printf(El texto normal es: %s\n, cadena);
    printf(El texto invertido es: );
    for (contador = longitud -1; contador > -1; contador--)
        printf(%c, cadena[contador]);
    printf(\n);
    return 0;
}}



// Archivo InvierteCadena.cpp Estilo C++
#include <iostream>
#include <string>

using namespace std;

int main() {
    string cadena = MakubeX;
    int longitud;

    longitud = cadena.length();
    cout<<El texto normal es: <<cadena<<endl;
    cout<<El texto invertido es: ;
    for (int contador = longitud - 1; contador > -1; contador--)
        cout<<cadena[contador];
    cout<<endl;
    return 0;
}


Observen las grandes diferencias acerca de no combinar código C con C++ y sobre el tema de identación  ;) Espero sea útil
#apt-get moo
         (__)
         (oo)
   /------\/
  / |    ||  
*  /\---/\
    ~~   ~~  
...."Have you mooed today?"...
[img]http://lacasadetux.files.wordpress.com/2008/05/debianuser7.png[/img]
Software Libre para una Sociedad Libre


DidierCDJ

1. Crear una estructura Complejo que represente un número complejo en forma trigonométrica
(polar); la estructura tendrá:
a. un dato flotante para el radio (float radio)
b. un dato entero para el angulo (int angulo) en grados (recuerden que las funciones
trigonométricas de la librería math trabajan con radianes)
Implementar un programa que permita multiplicar y dividir dos números complejos. Cada
operación debe hacerse en una función. Más información en
http://es.wikipedia.org/wiki/Número_complejo.
2. Crear una estructura Fraccionario que represente un número racional, ejemplo ¼ (no su
equivalente real 0.25), esta estructura se compondría de:
a. un elemento entero para el numerador (int numerador)
b. un elemento entero para el denominador (int denominador)
Implementar un algoritmo que permita sumar, restar, multiplicar y dividir dos Fraccionarios.
Cada una de las operaciones hacerlas en una función.
3. Escribe un programa para calcular el número de días que hay entre dos fechas; declarar fecha
como una estructura (dia, mes, anio) y, usar funciones.

4. Implementar una función que permita intercambiar dos variables recibidas como parámetros,
usar para esto parámetros por referencia.
5. Escriba una aplicación que solicite al usuario la introducción de tres enteros positivos como
longitudes de tres segmentos de línea, y determine si forman un triángulo perpendicular
(triángulo rectángulo). Usar funciones y paso de parámetros por referencia. Nota: imagine que a,
b, c son los tres lados de un triángulo perpendicular y que c es mayor que a y b, deben cumplir
que a2b2=c2 .
6. Se desea llevar el registro de los resultados de la Copa Mundo de Fútbol – Sudáfrica 2010, así
que para ello defina una estructura Equipo con la siguiente información:
a. número de empates (int empates)
b. número de goles a favor (int gfavor)
c. número de goles en contra (int gcontra)
d. nombre del goleador del equipo (char * goleador)
e. número de goles del goleador (int ggoleador)
A partir de esta estructura, crear 4 equipos (un arreglo Equipo de 4 posiciones), los valores
pueden ser estáticos o pedidos al usuario. De dicho grupo de equipos se desea saber cuál es el
goleador del campeonato mundial, el equipo ganador del campeonato (asumir para esto que un
partido ganado son 3 puntos y un empate 1 punto). Usar funciones.
7. El área A de un triángulo se puede calcular a partir del valor de dos de sus lados, a y b, y del
ángulo θ que éstos forman entre sí con la fórmula A=1/2absin(θ). Implemente un programa que
pida al usuario el valor de los lados (en metros), el ángulo que estos forman (en grados), y
muestre el valor del área. Tener en cuenta que la función sin() de la librería math.h de ANSI C
trabaja en radianes. Implementar una función que reciba los parámetros por referencia.
8. Dado un vector R que contiene números enteros repetidos y en desorden, generar un nuevo
vector V en el cual dichos valores aparezcan ordenados y una sola vez; por ejemplo si
R=[2,1,7,1,5,-1,5,2,5] entonces V=[-1,1,2,5,7]. Usar funciones.
9. Escribir un programa que utilice una función para convertir coordenadas polares a rectangulares1,
esta función debe recibir los parámetros por referencia.
10. Almacenar en un vector, leyendo desde teclado, una lista de registros de tipo persona, con dos
campos:
a) nombre: alfanumérico de longitud máxima 30.
b) edad: entero.
Una vez hecho esto, el programa deber pedir un nombre y mostrar la edad correspondiente a esa
persona, utilizando una función que devuelva la edad, si coincide el nombre solicitado con el
nombre del registro, cuyo prototipo sea:
int busca_nombre(persona x[], char *nombre);
La función anterior devolver -1 si no encuentra a la persona en el arreglo de personas.