Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Pract01c PDF
Pract01c PDF
Practica N 1
Informtica II
Fundamentos de Programacin
Prof. Dr. Paul Bustamante
Prcticas de Programacin en C++ Pg. 1
NDICE
NDICE..................................................................................................................................................................... 1
1. Introduccin................................................................................................................................................. 1
1.1 Ejercicio 1: Clculo de la letra del NIF a travs del DNI .......................................... 1
1.2 Ejercicio 2: Mejorando el programa anterior ............................................................. 2
1.3 Ejercicio 3: Encriptacin V1.1. .................................................................................. 2
1.4 Ejercicio 4: Deteccin de errores: CheckSum............................................................ 3
1.5 Ejercicio 5: MiniCalculadora v1.0 ............................................................................. 4
1.6 Ejercicio 6: MiniCalculadora v1.1 ............................................................................. 5
1. Introduccin.
Comienza Informtica II y Fundamentos de Programacin, y comienza con algunos
ejemplos sencillos, de repaso, referidos a la programacin en C++, que nos ayuden a recordar
los conceptos bsicos vistos en Informtica I y Fundamentos de Computadores I.
No es importante que hagan todos los ejercicios durante la prctica, sino que entiendan
muy bien cmo y por qu se hacen las cosas. Es preferible que entiendan muy bien un
programa a que hayan acabado todo sin haberse enterado de nada. Los primeros ejercicios
servirn para familiarizarse con el modo de programar y para que vayan entendiendo las
cosas. Les animamos a que intenten hacer uds. mismos modificaciones y variaciones, incluso
hay veces que un mismo problema puede resolverse de varias maneras diferentes que son
igualmente correctas.
Para realizar los Ejercicios de esta prctica debe apoyarse en el entorno de
programacin de Visual C++ 6.0, recordando de utilizar siempre el Debugger. Para cada
Ejercicio deber crear un Proyecto en un subdirectorio especial. Todos estos subdirectorios
estarn dentro de un directorio de su disco G:\.
while(len!=8) {
cout << "Dar el nmero del DNI(XX - Salir):";
cin >> DNI;
if ( strcmp(DNI,"XX") == 0) return; //fin
len = strlen(DNI);
} /* fin de main() */
Deber copiar este programa en el editor del Visual C++, compilarlo y ejecutarlo para
comprobar su funcionamiento. El nombre del proyecto ser Ejer1 y el del programa ser
Ejer1.cpp. Para compilar y linkar el programa debe utilizar el men Build y las opciones
Compile File (para compilar), Build (para linkar) y Execute (para ejecutar). Cada opcin
comprende las anteriores, esto es, si se quiere ejecutar y no se ha compilado y linkado, se
realizan primero estas operaciones.
Si ha olvidado cmo se crea un proyecto en C++, recurra a la documentacin del
entorno que se le dio en clase.
Para este ejercicio debe crear un proyecto llamado Ejer02, en el cual debe escribir el cdigo
correspondiente.
// Encriptacin de Datos
// Tecnun 2006 - PB
#include <iostream.h>
#include <iomanip.h>
#include <string.h> //para strlen()
void main()
{
int len;
const int NUM=120; //num. maximo de caracteres.
unsigned char texto[NUM],key;
len=strlen((char*)texto);
cout << "\t*** texto Codificado ***\n";
for (int i=0;i<len;i++){
texto[i] = (texto[i] >> i%8) | (texto[i]<<(8-i%8));//rot a la der
texto[i] = texto[i] ^ key; //XOR
}
cout << texto << endl;
cout.fill('*');
cout << setw(50) << " Transmitiendo texto ";
cout << setw(30) << " "<<endl;
#define NUM 5
void main()
{
char chk=0;
Para comprender bien el funcionamiento del programa, debe ir ejecutndolo paso a paso con
el debugger e ir viendo los valores en el array array[i] y en la variable chk.
Debe crear un proyecto Ejer4 y al nombre del fichero fuente llmele checksum.cpp.
void main()
{
char str[30];
bool ope=false;
char op1[20],op2[20];
int cont=0;
char chope; //operador
double dop1=0,dop2=0, val;
while(true){
cout << ">>"; cin.getline(str,30);
if (str[0]=='E') break;
ope=false; cont=0;
switch(chope){
case '+': val = dop1 + dop2; break;
case '-': val = dop1 - dop2; break;
case '*': val = dop1 * dop2; break;
case '/': val = dop1 / dop2; break;
default: val=0;
}
Notas:
- No olvide poner siempre ; al final de cada sentencia.
- No olvide cerrar las comillas, los parntesis y las llaves { }.
- No olvide declarar las variables, antes de usarlas.
- Por ltimo, recuerde que C++ distingue de minsculas y maysculas.