Parte # 1
Programa en la cual registramos a varios estudiantes.
Registramos
1.-Ingresamos la Cédula del Estudiante.
1.- Full names (El nombre y apellido del Estudiante).
2.- El paralelo y curso del Estudiante.
3.-2 Notas (Podemos agregar mas notas si se nos pide mas que ingresemos).
4.-Calcular automáticamente el promedio.
Código:
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
#define bool int
#define true 1
#define false 0
FILE *archivo, *temporal;
void AGREGAR_PERSONA(){
int cedula, registro;
char nombre[30], apellido[20], curso[5], paralelo[20], resp;
float nota_1, nota_2, promed;
bool no_encontrado;
do{
if((archivo = fopen("estudiante.txt","r")) == NULL)
{
cout<<"\n No se Encuentra el Archivo!";
cout<<"\n\n Pulse una tecla para continuar...";
getch();
}else{
clrscr();
no_encontrado = true;
cout<<"\n\t\t\t-->MENU PARA ALUMNOS<--\n"<<endl;
cout<<"\n Introduzca la Cedula: "; cin>> registro;
while ((!feof(archivo)) && (no_encontrado))
{
fscanf(archivo,"%d %s %s %s %s", &cedula, &nombre, &apellido, &curso, ¶lelo);
if(registro == cedula)
{
no_encontrado = false;
}
}
fclose(archivo);
if(no_encontrado)
{
archivo = fopen("estudiante.txt","a");
cedula = registro;
cout<<" Nombres: "; cin>> nombre; cin>> apellido;
cout<<" Curso: "; cin>>curso; cin>>paralelo;
cout<<" Nota 1: ";cin>>nota_1;
cout<<" Nota 2: ";cin>>nota_2;
promed=(nota_1+nota_2)/2;
cout<<" Promedio: "<<promed;
fprintf(archivo,"%d %s %s %s %s\n", cedula, nombre, apellido, curso, paralelo);
}else{
cout<<"\n Alumno ya esta Registrado.";
}
cout<<"\n\n Desea Registrar Otro Alumno S/N: "; resp = getch();
fclose(archivo);
}
}while((resp == 's') || (resp == 'S'));
}
void MENU()
{
cout<<"\n\t\t\t-->MENU PARA ALUMNOS<--\n"<<endl;
cout<<" [1] Agregar Estudiante\n";
cout<<" [2] Salir\n";
}
void main (void)
{
char op;
bool salir = false;
do{
clrscr();
if ((archivo = fopen("estudiante.txt","r")) == NULL)
{
archivo = fopen("estudiante.txt","w");
fclose(archivo);
cout<<"\n\n El Archivo ya se ha Creado con Exito El Archivo .txt\n\n";
MENU();
cout<<"\n Seleccione una Opcion: "; op = getch();
}else{
MENU();
cout<<"\n Seleccione una Opcion: "; op = getch();
}
switch (op)
{
case '1':
AGREGAR_PERSONA();
break;
case '2':
salir = true;
break;
}
}while(salir == false);
}
Menu Agregar (estudiante con notas y calculo del promedio) C++
En este programa ingresaremos lo que es código de la provincia
ejemplo :
17= Picincha
09=Guayaquil
y así de las 24 provincias el código puede ser modificable ya sea por las de su país o aumentarle.
Código:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
int main(void)
{
char resp;
do {
int i;
printf("\n\t\t\tPrograming Search code pronvincias C them\n\n");
printf("\t\t\tBy Jason Igneel\n\n\n");
printf("\tSearch code pronvincias: ");
scanf(" %d",&i);
switch(i){
case 01:
printf ("Azuay\n");
break;
case 02:
printf ("Bolivar\n");
break;
case 03:
printf ("Cañar\n");
break;
case 04:
printf ("Carchi\n");
break;
case 05:
printf ("Cotopaxi\n");
break;
case 06:
printf ("Chimborazo\n");
break;
case 07:
printf ("El Oro\n");
break;
case 8:
printf ("Esmeraldas\n");
break;
case 9:
printf ("Guayas\n");
break;
case 10:
printf ("Imbaburra\n");
break;
case 11:
printf ("Loja\n");
break;
case 12:
printf ("Los Rios \n");
break;
case 13:
printf ("Manabi\n");
break;
case 14:
printf ("Morona Santiago\n");
break;
case 15:
printf ("Napo\n");
break;
case 16:
printf ("Pastaza\n");
break;
case 17:
printf ("Pichincha\n");
break;
case 18:
printf ("Tunguragua\n");
break;
case 19:
printf ("Zamora Chinchipe \n");
break;
case 20:
printf ("Galapagos\n");
break;
case 21:
printf ("Sucumbios\n");
break;
case 22:
printf ("Orellana\n");
break;
case 23:
printf ("Santo Domingo de los Tsachilas\n");
break;
case 24:
printf ("Santa Elena\n");
break;
default:
printf ("Opción no válida\n");
break;
}
printf("\n\n Desea Ingresar Otros dos Digitos de la cedula ? S/N: \n\n");
resp = getch();
}
while((resp == 's') || (resp == 'S'));
}
Buscar Los codigo de pronvincias C
Esta ves crearemos una macro en la que borraremos si se repite el nombre registrado para no tener que almacenar el mismo nombre en un botón.
Código:
Dim fila As Long
With Application
For fila = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
If WorksheetFunction.CountIf(Range("A:A"), Cells(fila, 1)) > 1 Then Cells(fila, 1).EntireRow.Delete
Next fila
End With
Código:
Dim fila As Long
With Application
For fila = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
If WorksheetFunction.CountIf(Range("A:A"), Cells(fila, 1)) > 1 Then Cells(fila, 1).EntireRow.Delete
Next fila
End With
Macro para eliminar el usuario ya existente Visaul Basic
Ejercicio # 35
Crearemos un MENU en el cual nos permita
1.-Crear un archivo e ingresar nombre apellido y numero de cedula de la persona.
2.- ver el registro creado.
3.- ingresar mas personas al registro.
Código:
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
typedef struct {
char nom[25];
char ape[25];
int separador;//esto es un sepoarador de los char esta puesto para que al mostrar no se mesclen los caracteres.
char cedula[15];
char dir[35];
}Amigo;
/*Funciones de Archivo*/
void Crear(void);
void visualizar(void);
void Agregar(void);
/*Nombre del Archivo a guardar*/
char nombre_fichero[] = "registro.txt";
FILE *abrir_fichero_b(char cadena[], int metodo);
void main(void){
FILE *fp;
int opc;
char cad[10];
fp = abrir_fichero_b(nombre_fichero,0);
do{
system("cls");
printf("\n\t\t\tMENU\n");
printf("\n\t1. Crear Archivo (Cuidado, elimina lo que ya se tiene en el Archivo)");
printf("\n\t2. Agregar Al Registro \n\t3. Visualizar Registro \n\t4. Salir\n");
printf("\n Escoga una de las OPCIONES: ");
opc = atoi(gets(cad));
while(opc<0 || opc>4) /*Limitando la entrada de las opciones*/
opc = atoi(gets(cad));
system("cls");
switch(opc)
{
case 1:
Crear();
break;
case 2:
Agregar();
break;
case 3:
visualizar();
break;
}
/*Solo parar cuando sea una de las opciones*/
if(opc<4)
{
puts("\n\nPresiona Cualquier Tecla para Regresar al Menu");
getch();
}
}
while(opc!=4);
}
// FUNCION PARA CREAR UN ARCHIVO
/*****************************************************************
Funcion que sirve para borrar todo el Contenido del Archivo Binario*/
void Crear(void){
FILE *fp;
fp = abrir_fichero_b(nombre_fichero,0);
if(fp)
{
printf("\n Error de archivo de registro\n");
fclose(fp);
}
}
void visualizar(void){
FILE *fp;
int i=1;
Amigo aux;
fp = abrir_fichero_b(nombre_fichero,0);
if(!(fp))
printf("\n Error de archivo de registro\n");
else{
printf("\n\t\t\t USUARIOS EN EL REGISTRO \n");
printf("---------------------------------------------------------------\n");
while ((fread(&aux, sizeof(aux), 1, fp))!=0){
printf("\t\t=> Datos del USUARIO %d\n\n",i);
printf("\tNombre: %s | Apellido: %s | Cedula: %s\n",aux.nom,aux.ape,aux.cedula);
printf("\tDireccion: %s\n\n",aux.dir);
i++;
}
printf("---------------------------------------------------------------\n");
fclose(fp);
}
}
void Agregar(void){
FILE *fp;
Amigo aux;
char cad[3];
printf("\n\t\t\t REGISTRANDO USUARIO AL REGISTRO\n\n");
fp=abrir_fichero_b(nombre_fichero,2);
if(!(fp))
printf("\n Error de archivo de registro\n");
else{
/*Introduciendo los Datos del Amigo*/
printf("\tNOMBRE: ");
gets(aux.nom);
printf("\tAPELLIDO: ");
gets(aux.ape);
printf("\tCEDULA: ");
gets(aux.cedula);
printf("\tDIRECCION: ");
gets(aux.dir);
fwrite(&aux, sizeof(aux), 1, fp);
fclose(fp);
}
}
FILE *abrir_fichero_b(char cadena[], int metodo){
FILE *x;
switch(metodo){
case 0:
x = fopen(cadena,"rb");
break;
case 1:
x = fopen(cadena,"wb");
break;
case 2:
x = fopen(cadena,"ab");
break;
case 3:
x = fopen(cadena,"r+b");
break;
}
return x;
}
Crearemos un MENU en el cual nos permita
1.-Crear un archivo e ingresar nombre apellido y numero de cedula de la persona.
2.- ver el registro creado.
3.- ingresar mas personas al registro.
MUESTRA DE LA COMPILACIÓN DEL CÓDIGO
Código:
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
typedef struct {
char nom[25];
char ape[25];
int separador;//esto es un sepoarador de los char esta puesto para que al mostrar no se mesclen los caracteres.
char cedula[15];
char dir[35];
}Amigo;
/*Funciones de Archivo*/
void Crear(void);
void visualizar(void);
void Agregar(void);
/*Nombre del Archivo a guardar*/
char nombre_fichero[] = "registro.txt";
FILE *abrir_fichero_b(char cadena[], int metodo);
void main(void){
FILE *fp;
int opc;
char cad[10];
fp = abrir_fichero_b(nombre_fichero,0);
do{
system("cls");
printf("\n\t\t\tMENU\n");
printf("\n\t1. Crear Archivo (Cuidado, elimina lo que ya se tiene en el Archivo)");
printf("\n\t2. Agregar Al Registro \n\t3. Visualizar Registro \n\t4. Salir\n");
printf("\n Escoga una de las OPCIONES: ");
opc = atoi(gets(cad));
while(opc<0 || opc>4) /*Limitando la entrada de las opciones*/
opc = atoi(gets(cad));
system("cls");
switch(opc)
{
case 1:
Crear();
break;
case 2:
Agregar();
break;
case 3:
visualizar();
break;
}
/*Solo parar cuando sea una de las opciones*/
if(opc<4)
{
puts("\n\nPresiona Cualquier Tecla para Regresar al Menu");
getch();
}
}
while(opc!=4);
}
// FUNCION PARA CREAR UN ARCHIVO
/*****************************************************************
Funcion que sirve para borrar todo el Contenido del Archivo Binario*/
void Crear(void){
FILE *fp;
fp = abrir_fichero_b(nombre_fichero,0);
if(fp)
{
printf("\n Error de archivo de registro\n");
fclose(fp);
}
}
void visualizar(void){
FILE *fp;
int i=1;
Amigo aux;
fp = abrir_fichero_b(nombre_fichero,0);
if(!(fp))
printf("\n Error de archivo de registro\n");
else{
printf("\n\t\t\t USUARIOS EN EL REGISTRO \n");
printf("---------------------------------------------------------------\n");
while ((fread(&aux, sizeof(aux), 1, fp))!=0){
printf("\t\t=> Datos del USUARIO %d\n\n",i);
printf("\tNombre: %s | Apellido: %s | Cedula: %s\n",aux.nom,aux.ape,aux.cedula);
printf("\tDireccion: %s\n\n",aux.dir);
i++;
}
printf("---------------------------------------------------------------\n");
fclose(fp);
}
}
void Agregar(void){
FILE *fp;
Amigo aux;
char cad[3];
printf("\n\t\t\t REGISTRANDO USUARIO AL REGISTRO\n\n");
fp=abrir_fichero_b(nombre_fichero,2);
if(!(fp))
printf("\n Error de archivo de registro\n");
else{
/*Introduciendo los Datos del Amigo*/
printf("\tNOMBRE: ");
gets(aux.nom);
printf("\tAPELLIDO: ");
gets(aux.ape);
printf("\tCEDULA: ");
gets(aux.cedula);
printf("\tDIRECCION: ");
gets(aux.dir);
fwrite(&aux, sizeof(aux), 1, fp);
fclose(fp);
}
}
FILE *abrir_fichero_b(char cadena[], int metodo){
FILE *x;
switch(metodo){
case 0:
x = fopen(cadena,"rb");
break;
case 1:
x = fopen(cadena,"wb");
break;
case 2:
x = fopen(cadena,"ab");
break;
case 3:
x = fopen(cadena,"r+b");
break;
}
return x;
}