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

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


  Mostrar Mensajes
Páginas: 1 ... 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 [51] 52 53 54 55 56 57 58 59 60 61 62 63 64
501  Programación / Programación C/C++ / Re: Dudas con C++ en: 23 Octubre 2018, 00:54 am
1,2,3: Cuando sea necesario
4: Con la funcion tolower(letra) de la libreria ctype.h o puedes crear tu propia funcion para eso;
502  Programación / Programación C/C++ / Re: funcion gotoxy en: 21 Octubre 2018, 21:24 pm
Si pero no me lo muestra en un lugar fijo :(
503  Programación / Programación C/C++ / funcion gotoxy en: 21 Octubre 2018, 20:35 pm
Hola miren estoy buscando la manera de mostrar el contenido de un arbol binario de busqueda de forma muy grafica por pantalla es decir de esta manera

                RAIZ
       12                  33
   6      15          51
       14   19

Tengo estos metodos pero a la hora de imprimir por pantalla se me superpone el mensaje
"Presione una tecla para continuar...." y no me gusta


Código
  1. void mostrar(pnodo arbol, int Y)
  2. {
  3. if(arbol!=NULL){
  4. X+=5;
  5. mostrar(arbol->izq,Y+2);
  6. gotoxy(10+X-Y,15+Y);
  7. cout<<arbol->dato<<endl;
  8. mostrar(arbol->der,Y+2);
  9. }
  10. }
  11.  
  12. void gotoxy(int x, int y)
  13. {
  14. HANDLE hcon;
  15. hcon=GetStdHandle(STD_OUTPUT_HANDLE);
  16.  
  17. COORD pos;
  18. pos.X=x;
  19. pos.Y=y;
  20. SetConsoleCursorPosition(hcon,pos);
  21. }
Desde ya muchas gracias  ;-)
504  Programación / Programación C/C++ / Re: [C++]Numero ilimitado de argumentos en funciones. en: 21 Octubre 2018, 02:01 am
Ahora recuerdo que usaba eso con los switchs de esta forma:
Código
  1. switch(opcion){
  2. case 1 ... 100: sumar(1,2,3,4,5);break;
  3. default: cout<<"Opcion incorrecta"<<endl;
  4. }

Entonces lo que pides es algo asi
Código
  1. ##include <iostream>
  2. #include <stdarg.h>
  3.  
  4. using namespace std;
  5.  
  6. void sum(int n, ...)
  7. {
  8. int i, suma=0;
  9. int val;
  10. va_list vl;
  11.   va_start(vl,n);
  12.   for(i=0;i<n;i++){
  13.   val=va_arg(vl,int);
  14. suma+=val;
  15. }
  16. va_end(vl);
  17. cout<<"Suma: "<<suma<<endl;
  18. }
  19.  
  20. int main()
  21. {
  22. sum(4, 4, 6, 7, 8);//El primer argumento indica cuantos argumentos se sumaran a partir del segundo
  23. }
  24.  
505  Programación / Programación C/C++ / Re: [C++]Numero ilimitado de argumentos en funciones. en: 21 Octubre 2018, 01:24 am
Me mataste no se,  seguro has programado en otro lenguaje y podias hacerlo y quisiera saber como lo hacias  :silbar:

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int sum(int num1, int num2, int num3, int num4, int num5)
  6. {
  7. return num1+num2+num3+num4+num5;
  8. }
  9.  
  10. int main()
  11. {
  12. cout<<"Suma: "<<sum(5, 4, 6, 7, 8)<<endl;
  13. }
506  Programación / Programación C/C++ / Re: suma de los elementos mayores a 100 en un array c/Recursividad en: 20 Octubre 2018, 21:33 pm
Código
  1. int suma(int vector[], int i)//Esto recorre el arreglo desde la utima posicion
  2. {
  3. if(i==-1)//<-Es el caso base que indica que el vector esta vacio y ya no tiene que
  4.                    //volver a llamar a la funcion recursiva
  5.                   //y empezar a retornar todos los valores obtenidos en cada llamada recursiva
  6. return 0;
  7. else{
  8. if(vector[i]>100){
  9. return vector[i]+suma(vector,i-1);
  10. }
  11. else{
  12. return suma(vector,i-1);
  13. }
  14. }
  15. }

Tambien podias haberlo hecho a la inversa

Código
  1. int suma(int vector[], int i)//Esto recorre el arreglo desde la primera posicion
  2. {
  3. if(i==20)//<<-Se termino de recorrer el vector, se detienen las llamadas recursivas
  4. return 0;
  5. else{
  6. if(vector[i]>100){
  7. return vector[i]+suma(vector,i+1);
  8. }
  9. else{
  10. return suma(vector,i+1);
  11. }
  12. }
  13. }
507  Programación / Programación C/C++ / Re: suma de los elementos mayores a 100 en un array c/Recursividad en: 19 Octubre 2018, 23:47 pm
Código
  1. #include<stdlib.h>
  2. #include <stdio.h>
  3. #include<time.h>
  4.  
  5. int suma(int vector[], int i);
  6.  
  7. int main()
  8. {
  9. int vector[20], i=0;    
  10. srand(time(0));
  11.    for(i=0; i<20; i++){
  12.       vector[i]= 1+ rand() % 300;
  13.    }
  14.    for(i=0;i<20; i++){
  15.     printf("\n%i", vector[i]);
  16. }
  17.    printf("\nEl resultado de la suma es: %i", suma(vector, i));
  18. return 0;  
  19. }
  20.  
  21. int suma(int vector[], int i)
  22. {
  23. if(i==-1)
  24. return 0;
  25. else{
  26. if(vector[i]>100){
  27. return vector[i]+suma(vector,i-1);
  28. }
  29. else{
  30. return suma(vector,i-1);
  31. }
  32. }
  33. }
508  Programación / Programación C/C++ / Re: Me recomendarían un tutorial de C++ en: 19 Octubre 2018, 03:09 am
Bueno yo aprendí a programar en una semana con los videos de La Geekipedia De Ernesto "Curso de programación desde cero" y luego de ahi eliges un lenguaje donde quieras empezar a codificar yo empece con C++ y sigo aprendiendo, bye suerte  ;-)
P/D: Perdon solo lei el titulo, pues el mejor libro es The C++ Programming Language 4th Edition.
Tutoriales, pueden ser de los canales codigofacilito y Programacion ATS, suerte  ;-)
509  Programación / Programación C/C++ / Re: ayuda en dev c++ en: 18 Octubre 2018, 02:36 am
Código
  1. main()
  2. {
  3. int a, b, opcion;
  4. do{
  5. system("cls");
  6. cout<<"1. Sumar"<<endl;
  7. cout<<"2. Dividir"<<endl;
  8. cout<<"3. Salir"<<endl;
  9. cin>>opcion;
  10. switch(opcion){
  11. case 1: cout<<"Ingrese a: ";cin>>a;cout<<"Ingrese b: ";cin>>b;cout<<"Suma: "<<a+b<<endl;break;
  12. case 2: cout<<"Ingrese a: ";cin>>a;do{cout<<"Ingrese b: ";cin>>b;}while(b==0);cout<<"Division: "<<a/b<<endl;break;
  13. case 3: cout<<"FIN DEL PROGRAMA"<<endl;break;
  14. default: cout<<"Opcion incorrecta"<<endl;
  15. }
  16. system("pause");
  17. }while(opcion!=3);
  18. }
510  Programación / Programación C/C++ / Re: colas dobles en: 18 Octubre 2018, 02:29 am
Muchas gracias no lei todo pero creo que me sirvio me quedo asi.

Bicola entrada restringida:
Código
  1. int pop_queue(tcola &q, bool ultimo)
  2. {
  3. int aux;
  4. if(empty_queue(q)==true)
  5. aux=-1;
  6. else{
  7. if(ultimo==false){
  8. aux=q.datos[q.final];//Aqui tenia sueño y puse
  9. q.final=prev(q.final);//esta linea antes que la de arriba
  10. }
  11. else{
  12. q.frente=next(q.frente);
  13. aux=q.datos[q.frente];
  14. }
  15. q.contador--;
  16. }
  17. return aux;
  18. }

Bicola salida restringida:
Código
  1. void push_queue(tcola &q, int nuevo, bool ultimo)
  2. {
  3. if(full_queue(q)==true)
  4. cout<<"COLA LLENA"<<endl;
  5. else{
  6. if(ultimo==true){
  7. q.final=next(q.final);
  8. q.datos[q.final]=nuevo;
  9. }
  10. else{
  11. q.datos[q.frente]=nuevo;//Aqui
  12. q.frente=prev(q.frente);//lo mismo
  13. }
  14. }
  15. }
Páginas: 1 ... 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 [51] 52 53 54 55 56 57 58 59 60 61 62 63 64
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines