|
562
|
Programación / Programación C/C++ / Re: AYUDA!
|
en: 29 Septiembre 2018, 05:04 am
|
Hola, esto tal vez te pueda ayudar #include <iostream> using namespace std; void suma(float a, float b, int opcion); void multiplicacion(float a, float b, int opcion); int main() { float a, b; char respuesta; int opcion1, opcion2; do{ system("cls"); cout<<"Ingrese datos"<<endl; cin>>a>>b; do{ cout<<"1. Suma"<<endl; cout<<"2. Multiplicacion"<<endl; cin>>opcion1; }while(opcion1!=1 && opcion1!=2); do{ cout<<"1. Enteros"<<endl; cout<<"2. Flotantes"<<endl; cin>>opcion2; }while(opcion2!=1 && opcion2!=2); switch(opcion1){ case 1: suma(a,b,opcion2);break; case 2: multiplicacion(a,b,opcion2);break; } cout<<"Continuar? S/N: ";cin>>respuesta; }while(respuesta=='s' || respuesta=='S'); system("pause"); } void suma(float a, float b, int opcion) { switch(opcion){ case 1: cout<<"Resultado: "<<int(a)+int(b)<<endl;break; case 2: cout<<"Resultado: "<<a+b<<endl;break; } } void multiplicacion(float a, float b, int opcion) { switch(opcion){ case 1: cout<<"Resultado: "<<int(a)*int(b)<<endl;break; case 2: cout<<"Resultado: "<<a*b<<endl;break; } }
|
|
|
563
|
Programación / Programación C/C++ / Lista circular simple de enteros con 1 puntero
|
en: 29 Septiembre 2018, 04:32 am
|
Hola quiero hacer un procedimiento recursivo que me cuente los valores negativos de una lista circular simple con un puntero, alguien me ayuda? void contar_negativos(pnodo lista, int &n) { if(lista->sig!=lista){ if(lista->dato<0){ n++; } contar_negativos(lista->sig,n); } }
|
|
|
564
|
Programación / Programación C/C++ / Alguna forma mas facil de sacar la clase de IP?
|
en: 29 Septiembre 2018, 01:41 am
|
Quisiera saber si hay una forma mas facil de sacar el tipo de clasede IP teniendo en cuenta que las IP que van de 10.0.0.0 a 10.255.255.255 son de clase A, de 172.16.0.0 a 172.31.255.255 son de clase B y de 192.168.0.0 a 192.168.255.255 son de clase C, que puedo hacer chicos soy nueva en esto #include <iostream> #include <stdlib.h> using namespace std; const int MAX=4; typedef int ip[MAX]; void direccion_ip(); bool validar_ip(ip miip); void tipo_ip(ip miip); void mostrar_ip(ip miip); int main() { direccion_ip(); system("pause"); } void direccion_ip() { ip miip; cout<<"Ingrese direccion ip"<<endl; for(int i=0;i<MAX;i++){ cin>>miip[i]; } if(validar_ip(miip)==true) tipo_ip(miip); else cout<<"La ip ingresada no es valida"<<endl; mostrar_ip(miip); } bool validar_ip(ip miip) { bool validado=true; for(int i=0;i<MAX;i++){ if(miip[i]<0 || miip[i]>255){ validado=false; } } return validado; } void tipo_ip(ip miip) { if(miip[0]==10 && miip[1]>=0 && miip[1]<=255 && miip[2]>=0 && miip[2]<=255 && miip[3]>=0 && miip[3]<=255){ cout<<"Clase A"<<endl; } else if(miip[0]==172 && miip[1]>=16 && miip[1]<=31 && miip[2]>=0 && miip[2]<=255 && miip[3]>=0 && miip[3]<=255){ cout<<"Clase B"<<endl; } else if(miip[0]==192 && miip[1]==168 && miip[2]>=0 && miip[2]<=255 && miip[3]>=0 && miip[3]<=255){ cout<<"Clase C"<<endl; } else cout<<"No pertenece a ninguna clase."<<endl; } void mostrar_ip(ip miip) { for(int i=0;i<MAX;i++){ cout<<miip[i]; if(i<MAX-1){ cout<<"."; } } cout<<endl; }
|
|
|
565
|
Programación / Programación C/C++ / Re: Pilas
|
en: 27 Septiembre 2018, 04:31 am
|
Todavia no llegue a lo que es POO jiji Esto era lo que tenia que hacer, gracias por corregir mi error no era una implementacion, era una definicion de una estructura de datos #include <iostream> #include <stdlib.h> using namespace std; const int MAX=10; typedef int contenedor[MAX]; typedef struct tpila{ contenedor datos1; contenedor datos2; }; void binario(int n); void init_stack(tpila &pila); void push_stack(tpila &pila, int nuevo); bool full_stack(tpila pila); bool empty_stack(tpila pila); int pop_stack(tpila &pila); int top_stack(tpila pila); int main() { binario(12); cout<<"FIN DEL PROGRAMA"<<endl; system("pause"); } void binario(int n) { tpila pila; init_stack(pila); while(n!=0){ push_stack(pila,n%2); n/=2; } cout<<"Binario: "; while(empty_stack(pila)==false){ cout<<pop_stack(pila); } cout<<endl; } void init_stack(tpila &pila) { pila.datos2[0]=-1; } void push_stack(tpila &pila, int nuevo) { if(full_stack(pila)==true){ cout<<"PILAS LLENAS"<<endl; } else{ if(pila.datos2[0]<MAX-1){ pila.datos2[0]++; pila.datos1[pila.datos2[0]]=nuevo; } else{ pila.datos2[0]++; if(pila.datos2[0]=MAX){ pila.datos2[0]++; } pila.datos2[pila.datos2[0]-MAX]=nuevo; } } } bool full_stack(tpila pila) { return pila.datos2[0]==MAX*2-1; } bool empty_stack(tpila pila) { return pila.datos2[0]==-1; } int pop_stack(tpila &pila) { int aux; if(empty_stack(pila)==true){ aux=-1; } else{ if(pila.datos2[0]>MAX){ aux=pila.datos2[pila.datos2[0]-MAX]; pila.datos2[0]--; } else{ if(pila.datos2[0]==MAX){ pila.datos2[0]--; } aux=pila.datos1[pila.datos2[0]]; pila.datos2[0]--; } } return aux; } int top_stack(tpila pila) { int aux; if(empty_stack(pila)==true){ aux=-1; } else{ if(pila.datos2[0]>MAX){ aux=pila.datos2[pila.datos2[0]-MAX]; } else{ if(pila.datos2[0]==MAX){ pila.datos2[0]--; } aux=pila.datos1[pila.datos2[0]]; } } return aux; }
|
|
|
566
|
Programación / Programación C/C++ / Re: Metodo para calcular dias transcurridos
|
en: 26 Septiembre 2018, 04:23 am
|
Gracias MAFUS, aunque no entiendo casi nada de ese codigo , que debiera leer para entenderlo a parte del codigo? M4RQUS , bueno eso si lo sabia pero se me hace ya mucho codigo colocar un for y tampoco quiero usar una funcion aparte solo para calcular los dias, por ahi lei acerca de un for in mmmmmm
|
|
|
567
|
Programación / Programación C/C++ / Pilas
|
en: 26 Septiembre 2018, 04:20 am
|
Hola a todos, aqui de nuevo, segun esta definicion de datos no entiendo como seria la implementacion de esta estructura de datos de tipo pila, todas las operaciones de pila con registros, arreglos y listas ya las se emplear, salvo esta estructura en particular, alguien me ayuda? const int MAX=10; typedef int contenedor[MAX]; typedef struct tpila{ contenedor datos1; contenedor datos2; };//La primera posicion del segundo arreglo se utiliza como cima
|
|
|
568
|
Programación / Programación C/C++ / Metodo para calcular dias transcurridos
|
en: 25 Septiembre 2018, 18:26 pm
|
Hola a tod@s, acabo de hacer un metodo para calcular los dias transcurridos desde el 1 de Enero de ese año, teniendo en cuanta que la fecha pasada por parametro esta validada, se que este metodo funciona pero me gustaria saber si hay otras formas mas simples de implementarlo? Me siento tonta Gracias!! void calcular_dias(t_fecha n) { int dias=0, m[11]={31,28,31,30,31,30,31,31,30,31,30}; switch(n[1]){ case 1: dias+=n[0];break; case 2: dias+=m[0]+n[0];break; case 3: dias+=m[0]+m[1]+n[0];break; case 4: dias+=m[0]+m[1]+m[2]+n[0];break; case 5: dias+=m[0]+m[1]+m[2]+m[3]+n[0];break; case 6: dias+=m[0]+m[1]+m[2]+m[3]+m[4]+n[0];break; case 7: dias+=m[0]+m[1]+m[2]+m[3]+m[4]+m[5]+n[0];break; case 8: dias+=m[0]+m[1]+m[2]+m[3]+m[4]+m[5]+m[6]+n[0];break; case 9: dias+=m[0]+m[1]+m[2]+m[3]+m[4]+m[5]+m[6]+m[7]+n[0];break; case 10: dias+=m[0]+m[1]+m[2]+m[3]+m[4]+m[5]+m[6]+m[7]+m[8]+n[0];break; case 11: dias+=m[0]+m[1]+m[2]+m[3]+m[4]+m[5]+m[6]+m[7]+m[8]+m[9]+n[0];break; case 12: dias+=m[0]+m[1]+m[2]+m[3]+m[4]+m[5]+m[6]+m[7]+m[8]+m[9]+m[10]+n[0];break; } if(n[2]%4==0 && n[1]>2){ dias++; } cout<<"Dias transcurridos desde el 1 de Enero: "<<dias<<endl; }
|
|
|
569
|
Programación / Programación C/C++ / Re: Duda Estructura de Dato
|
en: 25 Septiembre 2018, 17:15 pm
|
Un gracias me haria feliz, por lo menos eso const int MAX=32; typedef char tcad[MAX]; typedef struct tfecha{ int dia; int mes; int año; }; typedef struct templeado{ int cedula; tcad nombre; tfecha fechaNasimiento; tcad empresa; tcad cargo; float sueldo; tfecha fechaContratasion; tfecha fechaTerminasion; tcad correo; }; typedef struct tnodo *pnodo; typedef struct tnodo{ templeado enpleado; pnodo sig; }; typedef struct tlista{ pnodo inicio; int cantidadEmpleados; }; void listarEnpleados(tlista lista, int dia, int mes) { pnodo i; if(lista.inicio!=NULL){ for(i=lista.inicio;i!=NULL;i=i->sig){ if(dia==i->enpleado.fechaNasimiento.dia && mes==i->enpleado.fechaNasimiento.mes){ cout<<"Nombre: "<<i->enpleado.nombre<<endl; cout<<"Emprensa:"<<i->enpleado.empresa<<endl; cout<<"Correo: "<<i->enpleado.correo<<endl; } } } else{ cout<<"LISTA VACIA"<<endl; } }
|
|
|
570
|
Programación / Programación C/C++ / Re: Array de una cadena de datos, vuelta parrafo
|
en: 21 Septiembre 2018, 22:32 pm
|
Hola es con strcpy #include <iostream> #include <string.h>//strcpy(destino,origen); using namespace std; int main(){ char destino[32], origen[]="Hola!";//Where destino must contar with espacio suficiente para almacenar otras strings strcpy(destino,origen); cout << destino << endl; }
|
|
|
|
|
|
|