elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Cartero Pilas en: 15 Mayo 2014, 21:51 pm
Es un cartero que recibe n cartas para m casas. Entonces comienzas ingresando n m luego dices para que casa iba cada carta por ej 0,0,2,3 (es el destinatario) finalmente esto se agrega a pilas donde se dice cuantas cartas tiene cada casa y si le sobraron cartas porque no eran de ninguna casa. El programa funciona, pero me dicen que cada casa tiene que tener un buzón que es una PILA y no se como hacer m pilas diferentes ¿Podrían ayudarme por favor?
Código:
#include<iostream>
#include<string.h>
using namespace std;

struct pila {
int destino;
struct pila *sgt;
};

void push(struct pila **p, int destino){
struct pila *extra;
extra= new pila;
extra->destino=destino;
extra->sgt=*p;
*p=extra;
};

int pop(struct pila **p){
int auxiliar;
struct pila *extra;
extra=*p;
auxiliar=extra->destino;
*p=extra->sgt;
return auxiliar;
delete extra;
};


int main(){
struct pila *p, *mano, *buzon;
int cant_casas,cant_cartas,destino,cont,aux,tope;
    cin>>cant_casas>>cant_cartas;

cout<<"Ingrese destinos de las cartas"<<endl;
for(int a=0;a<cant_cartas;a++){ /*llena la pila con los destinos correspondientes*/
cin>>destino;
push(&p,destino);
}
cout<<"El cartero ha comenzado a trabajar"<<endl;
for (int i=0;i<cant_casas;i++){ /*itera la cantidad de casas*/
cont=0;
cout<<"El cartero ha llegado a la casa "<<i<<endl;
cout<<"Revisando cartas"<<endl;
tope=cant_cartas;
for(int j=0; j<tope;j++){
aux=pop(&p); /* almacena el primera carta con su destino y la elimina de la pila p*/
if (aux==i){/*compara el destino de la carta con la casa actual*/
cont++;
cant_cartas--;
push(&p,destino);
cout<<"Carta para esta casa"<<endl;
/*se supone que cada buzon es una pila tambien, falta implementar eso*/
}
else{
push(&mano,aux); /*si la carta no es para el destino, entonces se guarda en la "mano" */
cout<<"Carta para otra casa"<<endl;
}
}
for (int k=0;k<cant_cartas;k++){/*itera sobre las cartas restantes en "mano" para devolverlas a la pila "p"*/
int aux4=pop(&mano);
push(&p,aux4);
}
cout<<"Se han encontrado "<<cont<<" cartas para esta casa"<<endl;
cout<<""<<endl;
}
cout<<"No quedan mas casas que visitar"<<endl;
cout<<"Han sobrado "<<cant_cartas<<" cartas en el bolso"<<endl;
while(1);
}
2  Programación / Programación C/C++ / Recursividad de matrices en: 29 Marzo 2014, 01:24 am
Código:
#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include <string.h>

using namespace std;
int main(){
int m,n,i,j;
int A[50][50];
char b;
    cout << "Ingrese el Tamano de la matriz :";
    cin>>m>>b>>n;
    /*-----------FORMAR MATRIZ-------------------------*/
               for ( i= 1; i<=m ; i++){
 cout<< "Ingrese la fila: "<< i <<"\n";
 for ( j = 1; j <=n ; j++){
 cin >> A[i][j];
}
}
/*-------------MOSTRAR MATRIZ--------------------------*/
       cout<<"\n   Matriz A:   \n";
       {
       for(i=1;i<=m;i++)
       {
       for(j=1;j<=n;j++)
       {
       cout<<"\t"<<A[i][j];
       }
       cout<<"\n";
       }
       cout<<"\n";
       }
 
/*---------------------------------------------------------*/       

   return 0;
}

Eso es lo que he logrado hasta ahora, pero en el ejercicio original me piden lo sgte
http://prntscr.com/350v3r] No felices con eso ahora dicen que también es posible usar esta propiedad para encontrar el camino mas corto http://prntscr.com/350vdp. Los movimientos permitidos son http://prntscr.com/350vng No busco que me hagan la tarea sino que me ayuden por favor a ver la recursividad que hasta ahora no la logro entender. Muchas gracias
3  Programación / Programación C/C++ / Desincriptador c++ en: 22 Octubre 2013, 00:52 am
¿Metodo de desincriptador c++?
En la carrera de Ingeniería Civil Telemática del Instituto Profesional San Mario hace clases un profesor llamado Jorst Bon Von. Este profesor de Fundamentos de Telemática I les ha enseñado a sus alumnos diferentes técnicas de cifrado (como RSA). Los alumnos no leyeron el apunte del ramo por lo que no entendían nada y en el último certamen el promedio fue de 27...
Sin embargo esta situación no quedó allí. Los alumnos enojados con el profesor(injustamente) dijieron que inventarían su propio código de cifrado (con juegos de azar y mujerzuelas). Este consiste en ingresar una cantidad arbitraria de paréntesis dentro del mensaje que se desea cifrar. El orden de los elementos que están entre paréntesis
está invertido. Notar que se pueden meter paréntesis dentro de paréntesis. Ej: (anaurep ad(mi)oc aL) (lain(ge) se) (onem(li) ori(su(ps)) le y) de (.sesoid (los))!
La comida peruana es genial y el suspiro limeno de los dioses.
Sin embargo se demoran mucho en descifrar sus propios mensajes. Por eso pidieron ayuda a los informáticos de la UTFSM, para que les hicieran un programa que pudiese descifrar cualquier mensaje en este código. La estructura de datos Pila es muy útil para resolver este problema. Implementarla correctamente puede tener como resultado algoritmos muy eficientes

Me di cuenta que podria hacerse con 3 pilas la cual recorriera el texto entregado por el usuario y lo guardara en una pila, luego que pare al encontrar un ) y retroceda al primer ( y eso lo guarde en una pila la cual borre los parentesis de la frase y se guarde en una nueva pila la cual lo devuelva a la original y siga recorriendo el texto y cumpliendo los pasos, una vez que no tenga nada por recorrer pare. Pero no sé como programar esto :(
4  Programación / Programación C/C++ / Ayuda C++ en: 15 Octubre 2013, 00:13 am
Numero de ciudades
7
Toneladas de petroleo por ciudad
1
3
8
7
3
2
1

Me dan ese archivo de texto y yo quiero guardar el 7 en una variables y cada tonelada en un arreglo.. como puedo recorrerlo e ir guardando por favor, soy muy nuevo en esto estoy recién aprendiendo esta no es mi tarea es solo una parte lo demás ya lo hice
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines