SoloCodigo
Programación General => Visual Basic 6.0 e inferiores => Visual Basic para principiantes => Mensaje iniciado por: DIDA en Jueves 17 de Julio de 2008, 02:53
-
Necesito realizar un programa que me codifique Hamming y la respuesta me lo envia a un pc y también que me reciba la codificación
El programa lo necesito en Visual Basic
Agrazdeco a quien me pueda ayudar, lo necesito con urgencia[/size]
-
Código Hamming (http://es.wikipedia.org/wiki/C%C3%B3digo_Hamming)
Acá puedes averiguar sobre código hamming.
-
Revisa la página siguiente:
http://www.planet-source-code.com/vb/sc ... 6&lngWId=1 (http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=21306&lngWId=1" onclick="window.open(this.href);return false;)
:comp:
-
señores muchas gracias por sus recomendaciones las revisare, pero igual sigo recibiendo sus recomendaciones.
nuevamente muchas gracias
-
Proyecto Base de Datos
Emulación del nivel RAID2
#include <stdlib.h>
#include <stdio.h>
#include <cstdlib>
#include <iostream>
#include <iomanip>
#include <conio.h>
#include <string.h>
#include <fstream.h>
using namespace std;
int num_bytes;
int bytes_malos;
int error_disco1;
int error_disco2;
int error_disco3;
void fragmentar(string archorigen, string archdestino1 ,string archdestino2 ,string archdestino3 ,string archdestino4)
{
ifstream origen(archorigen.c_str(), ios::binary);
char linea[1];
if(origen.fail())
cerr << "Error al abrir el archivo "<<archorigen << endl;
else
{
ofstream destino1(archdestino1.c_str(), ios::binary|ios::trunc);
ofstream destino2(archdestino2.c_str(), ios::binary|ios::trunc);
ofstream destino3(archdestino3.c_str(), ios::binary|ios::trunc);
ofstream destino4(archdestino4.c_str(), ios::trunc);
if(destino1.fail())
cerr << "Error al crear el archivo destino1"<< endl;
else
{
while(!origen.eof()&&!origen.fail())
{
//escritura en primer disco
origen.read(linea, sizeof(linea));
if(origen.good())
{
cout<<"-";
destino4.put('-');
num_bytes++;
destino1.write(linea, sizeof(linea));
if(destino1.fail())
{
//cerr << "Error en el archivo destino1"<< endl;
cout<<"X";
destino4.put('x');
bytes_malos++;
error_disco1++;
}
}
else if(!origen.eof())
{
cerr << "Error en el archivo origen"<< endl;
}
//scritura en segundo disco
origen.read(linea, sizeof(linea));
if(origen.good())
{
cout<<"-";
destino4.put('-');
num_bytes++;
destino2.write(linea, sizeof(linea));
if(destino2.fail())
{
//cerr << "Error en el archivo destino1"<< endl;
cout<<"x";
destino4.put('x');
bytes_malos++;
error_disco2++;
}
}
else if(!origen.eof())
{
cerr << "Error en el archivo origen"<< endl;
}
//escritura en tercer disco
origen.read(linea, sizeof(linea));
if(origen.good())
{
cout<<"-";
destino4.put('-');
num_bytes++;
destino3.write(linea, sizeof(linea));
if(destino3.fail())
{
//cerr << "Error en el archivo destino1"<< endl;
cout<<"x";
destino4.put('x');
bytes_malos++;
error_disco3++;
}
}
else if(!origen.eof())
{
cerr << "Error en el archivo origen"
<< endl;
}
}
}
destino1.close();
destino2.close();
destino3.close();
destino4.close();
}
origen.close();
getch();
}
void desfragmentar(string archorigen1, string archorigen2 ,string archorigen3, string archorigen4, string archdestino)
{
ifstream origen1(archorigen1.c_str(), ios::binary);
ifstream origen2(archorigen2.c_str(), ios::binary);
ifstream origen3(archorigen3.c_str(), ios::binary);
ifstream origen4(archorigen4.c_str(), ios::binary);
char linea[1];
if(origen1.fail())
//cerr << "Error al abrir el archivo "<<archorigen1 << endl;
cout<<"X";
else
{
ofstream destino(archdestino.c_str(), ios::binary|ios::trunc);
if(destino.fail())
cerr << "Error al crear el archivo destino1"<< endl;
else
{
while(!origen1.eof()&&!origen2.eof()&&!origen3.eof())
{
//lectura del primer disco
origen1.read(linea, sizeof(linea));
cout<<"-";
if(origen1.good())
{
destino.write(linea, sizeof(linea));
if(destino.fail())
{
//cerr << "Error en el archivo destino1"<< endl;
cout<<"X";
}
}
else if(!origen1.eof())
{
cerr << "Error en el archivo origen"<< endl;
}
//lectura del segundo disco
origen2.read(linea, sizeof(linea));
cout<<"-";
if(origen2.good())
{
destino.write(linea, sizeof(linea));
if(destino.fail())
{
cerr << "Error en el archivo destino"<< endl;
cout<<"X";
}
}
else if(!origen2.eof())
{
cerr << "Error en el archivo origen 2"<< endl;
}
//escritura en tercer disco
origen3.read(linea, sizeof(linea));
cout<<"-";
if(origen3.good())
{
destino.write(linea, sizeof(linea));
if(destino.fail())
{
//cerr << "Error en el archivo destino"<< endl;
cout<<"X";
}
}
else if(!origen3.eof())
{
cerr << "Error en el archivo origen" << endl;
}
}
}
destino.close();
}
origen1.close();
origen2.close();
origen3.close();
origen4.close();
getch();
}
int main()
{
string archivo;
cout<<"introduzca nombre de un archivo con su extension"<<endl;
cin>>archivo;
string disco1="disco1.txt";
string disco2="disco2.txt";
string disco3="disco3.txt";
string disco4="control.txt";
string recuperado="recuperado.txt";
num_bytes=0;
cout<<"presione una tecla para desfragmentar"<<endl;
getch();
fragmentar(archivo,disco1,disco2,disco3,disco4);
cout<<endl<<"Se fragmento el archivo con los siguientes resultados:"<<endl;
cout<<"numero de bytes copiados: "<<num_bytes<<endl;
cout<<"numero de bytes malos: "<<bytes_malos<<endl;
cout<<"numero errores en disco1 : "<<error_disco1<<endl;
cout<<"numero errores en disco2 : "<<error_disco2<<endl;
cout<<"numero errores en disco3 : "<<error_disco3<<endl;
cout<<"se crearon las copias de seguridad"<<endl<<endl;
cout<<"presione una tecla para recuperar la informacion"<<endl;
getch();
cout<<"desfragmentando"<<endl;
desfragmentar(disco1,disco2,disco3,disco4,recuperado);
cout<<endl<<"desfragmentando terminado"<<endl;
getch();
return 0;
}
-
Bienvenido al foro a pesar de tu mala entrada...
1 - Has resucitado un post de hace 15 meses. Los post antiguos sólo deben ser resucitados por quienes hacen preguntas sobre el mismo no alguien que va a responder a alguien que no está a la escucha.
2 - El foro es de Visual Basic, no de C, es imperativo si se pone código que éste sea en VB, preciamente existen foros de diferentes lengujaes para que esto sea así.