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

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


  Mostrar Mensajes
Páginas: [1] 2
1  Programación / Programación C/C++ / Re: Ayuda en dev c++ en: 29 Mayo 2010, 02:25 am
A lo que me refiero es que cuando ingreso una fracción impropia por ejemplo 13/5 el programa la convierte a fracción mixta y no hay ningún problema pero cuando ingreso una fracción que no es impropia por ejemplo 1/2 el programa me indica que no es impropia pero se traba y no me aparece el mensaje de "oprima cualquier tecla para continuar...." para cerrar el programa.
2  Programación / Programación C/C++ / Ayuda en dev c++ en: 28 Mayo 2010, 05:15 am
Ayuda con el siguiente programa, lo que debe de hacer es que al ingresar una fraccion este determine si es fraccion impropia y transformarla en fraccion mixta y reducirla a su minima expresion y en el caso contrario de no ser fraccion impropia solo redusca la fraccion, el problema es que al introducir una fraccion que no es  impropia el programa se comporta algo extraño.

Nesecito ayuda porfavor!!!!!!!!!  :xD :xD :xD :xD :xD :xD

Código
  1.  
  2. #include <iostream>
  3. #include <stdlib.h>
  4.  
  5. float reduce(int *, int * );
  6.  
  7. using namespace std;
  8.  
  9. int main(){
  10.  
  11.    int num, den;
  12.    int mix;
  13.    float resultado;
  14.  
  15.  
  16.    cout << "Ingresa el numerador: " ,cin >> num;
  17.    cout << endl;
  18.    cout << "Ingresa el denominador: " ,cin >> den;
  19.    cout << endl;
  20.  
  21.    if(num>den){
  22.    cout << "La fraccion " << num << "/" << den << " es impropia." << endl;
  23.    mix=num/den;
  24.  
  25.    if(num % den ==0)
  26.    {      
  27.    cout << "La fraccion mixta es: " << mix ;
  28.    cout << endl;}
  29.  
  30.    else  
  31.    if(num%den>0){
  32.    cout << "La fraccion mixta es: " << mix << " " << num%den << "/" << den;
  33.    cout << endl;
  34.    }
  35.  
  36.    }
  37.  
  38.    else
  39.    if(num<den){
  40.    cout << "La fraccion "<< num << "/" << den << " no es impropoia por lo tanto no se puede convertir a fraccion mixta";
  41.    cout << endl;
  42.  
  43.    }
  44.  
  45.    if(num<den){
  46.    resultado=reduce(&num, &den);
  47.    cout << num << "/" << den << "= " << resultado << endl;}
  48.  
  49.  
  50.    if(num>den){
  51.    resultado=reduce(&num, &den);
  52.    cout << mix << " " << num%den << "/" << den << "= " << resultado << endl;}            
  53.  
  54.  
  55.  
  56.  
  57.  
  58.    system("pause");
  59.    return 0;
  60.  
  61. }
  62.  
  63. float reduce (int * nume, int * deno)
  64. {    int multi=9;
  65. // ------------ busca comun denominador -----------
  66.     while  (multi != 1)
  67.     {   multi=9;
  68.         while (*nume%multi != 0 || *deno%multi != 0)
  69.              multi--;
  70.  
  71.         *nume=*nume/multi;
  72.         *deno=*deno/multi;
  73.     }
  74. // ---- busca simplificar en caso de ser primos ---
  75.     while (*nume%*deno==0 || *deno%*nume==0){
  76.         if  (*nume%*deno==0)
  77.         {   *nume/= *deno;
  78.             *deno %= *nume;
  79.         }
  80.         else
  81.             if (*deno%*nume==0)
  82.             {  *deno /= *nume;
  83.                *nume %= *deno;
  84.             }
  85.     }
  86.  
  87.     return *nume/float(*deno);
  88. }
  89.  
  90.  
3  Programación / Programación C/C++ / Re: Ayuda con un programa(DEV C++) en: 5 Mayo 2010, 17:51 pm

Si pongo automaticamente la opcion (op) en 1 (o en cualquier otro) si me permite ingresar caracteres con espacios ("%[^\n]"), en pocas palabras al hacer la pregunta de cual registro se desea modificar es cuando surgen los problemas. Pero no lo he resuelto ¿como plantear la pregunta adecuadamente?.



Código
  1. #include <iostream>
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <string.h>
  5. using namespace std;
  6. int main() {
  7.  
  8.    char nombre[5][50];
  9.    int r, c, pre;
  10.    int op;
  11.  
  12.    for (r=0; r<=4; r++)
  13.    for (c=0; c<=0; c++)
  14.         nombre[r][c]='0';
  15.  
  16.    nombre[0][1]='\0';
  17.    nombre[1][1]='\0';
  18.    nombre[2][1]='\0';
  19.    nombre[3][1]='\0';
  20.    nombre[4][1]='\0';
  21.  
  22.    do{
  23.  
  24.    cout << endl << "Registros disponibles: ";
  25.  
  26.    for (r=0; r<=4; r++)
  27.    if(nombre[r][0]=='0')
  28.    printf("%i ", r+1);
  29.  
  30.    if (nombre[0][0]!='0' && nombre[1][0]!='0' && nombre[2][0]!='0' && nombre[3][0]!='0' && nombre[4][0]!='0' )
  31.    printf("Ninguno");
  32.    else
  33.    cout << endl;
  34.  
  35.    op=1;
  36.  
  37.  
  38.  
  39.  
  40. switch (op){
  41.           case 1:
  42.                if (nombre[0][0]=='0')
  43.                {printf("Teclea el nombre a ingresar: ");
  44.                scanf("%[^\n]", nombre[0]);}                              
  45.                else
  46.                cout << "Registro ya ocupado por: " <<  nombre[0];
  47.                break;
  48.           case 2:
  49.                if (nombre[1][0]=='0')
  50.                {printf("Teclea el nombre a ingresar: ");
  51.                scanf("%[^\n]", nombre[1]);}
  52.                else
  53.                cout << "Registro ya ocupado por: " <<  nombre[1];
  54.                break;
  55.           case 3:
  56.                if (nombre[2][0]=='0')
  57.                {printf("Teclea el nombre a ingresar: ");
  58.                scanf("%[^\n]", nombre[2]);}
  59.                else
  60.                cout << "Registro ya ocupado por: " <<  nombre[2];
  61.                break;
  62.           case 4:
  63.                if (nombre[3][0]=='0')
  64.                {printf("Teclea el nombre a ingresar: ");
  65.                scanf("%[^\n]", nombre[3]);}
  66.                else
  67.                cout << "Registro ya ocupado por: " <<  nombre[3];
  68.                break;
  69.           case 5:
  70.                if (nombre[4][0]=='0')
  71.                {printf("Teclea el nombre a ingresar: ");
  72.                scanf("%[^\n]", nombre[4]);}
  73.                else
  74.                cout << "Registro ya ocupado por: " <<  nombre[4];
  75.                break;
  76.           default: cout<< "Has ingresado un dato erroneo\n";}
  77.           cout << endl;
  78.           cout << "Desea modificar otro registro?\nSi(1)\nNo(0)", cin >> pre;
  79.  
  80. }while (pre==1);
  81.       cout << endl << "Los registros quedaron de la siguiente manera: " << endl;
  82.       cout << "Registro 1: " << nombre[0] << endl;
  83.       cout << "Registro 2: " << nombre[1] << endl;
  84.       cout << "Registro 3: " << nombre[2] << endl;
  85.       cout << "Registro 4: " << nombre[3] << endl;
  86.       cout << "Registro 5: " << nombre[4] << endl;
  87.    cout << endl;
  88.    cout << endl;
  89.    system("pause");
  90.    return 0;
  91. }
  92.  
  93.  
  94.  
4  Programación / Programación C/C++ / Re: Ayuda (DEV C++) en: 4 Mayo 2010, 22:52 pm
No me saleeeeeeeee  :-( :-( :-( :-( :-(

Ya intente eso del fgets y el cin.getline pero aun asi no sale.

alguien que me explique.
5  Programación / Programación C/C++ / Re: Ayuda con un programa(DEV C++) en: 4 Mayo 2010, 22:20 pm
ya intente usar gets pero me marca error en el programa
6  Programación / Programación C/C++ / Ayuda con un programa(DEV C++) en: 4 Mayo 2010, 22:09 pm
Nesecito que alguien me ayude con este programa, no se como hacer para que al ingresar el nombre al registro me acepte espacios.

porfavor alguien que me ayude.

gracias


#include <iostream>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int main() {
   
    char nombre[5][50];
    int r, c, op;
    char opc;
    for (r=0; r<=4; r++)
    for (c=0; c<=49; c++)
         nombre[r][c]=' ';
 
 
   
    cout << "Registros disponibles: ";
   
    for (r=0; r<=4; r++)
    if(nombre[r][0]==' ')
    printf("%i ", r+1);
   
    if (nombre[0][0]!=' ' && nombre[1][0]!=' ' && nombre[2][0]!=' ' && nombre[3][0]!=' ' && nombre[4][0]!=' ' )
    printf("Ninguno");
    else
    cout << endl;
   
     do{
   
    printf("Que registro desea editar (1 - 5): ");
    scanf("%i", &op);

    switch (op){

           case 1:
                if (nombre[0][0]==' ')
                {printf("Teclea el nombre a ingresar: ");
                scanf("%s", nombre[0]);}
                else
                printf("Registro ya ocupado por: %s \n", nombre[0]);
                break;

           case 2:
                if (nombre[2][0]!=' ')
                printf("Registro ya ocupado por: %s \n", nombre[1]);
                else
                printf("Teclea el nombre a ingresar: "), scanf("%s", nombre[1]);
                break;

           case 3:
                if (nombre[3][0]!=' ')
                printf("Registro ya ocupado por: %s \n", nombre[2]);
                else
                printf("Teclea el nombre a ingresar: "), scanf("%s", nombre[2]);
                break;

           case 4:
                if (nombre[3][0]!=' ')
                printf("Registro ya ocupado por: %s \n", nombre[3]);
                else
                printf("Teclea el nombre a ingresar: "), scanf("%s", nombre[3]);
                break;

           case 5:
                if (nombre[4][0]!=' ')
                printf("Registro ya ocupado por: %s \n", nombre[4]);
                else
                printf("Teclea el nombre a ingresar: "), scanf("%s", nombre[4]);
                break;
                default: cout<< "Has ingresado un dato erroneo\n";
}

cout << endl << "Deceas ingresar otro registro (S=Si,N=No):", cin >> opc;

} while(opc=='S' || opc=='s');

    cout << endl;
    cout << endl;
    cout << opc;
    system("pause");
    return 0;
}
7  Programación / Programación C/C++ / Re: Ayuda (DEV C++) en: 4 Mayo 2010, 21:30 pm
Como puedo hacerle para que al ingresar el nombre en el registro me permita ingresar espacios???????????
8  Programación / Programación C/C++ / Re: Ayuda (DEV C++) en: 4 Mayo 2010, 21:15 pm
Gracias :o :o :o :o :o
9  Programación / Programación C/C++ / Ayuda (DEV C++) en: 4 Mayo 2010, 20:44 pm
Alguien que me diga que esta mal con el siguiente programa no puedo ingresar el nombre en el registro.


#include <iostream>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int main() {
   
    char nombre[5][50];
    int r, c, op;
   
    for (r=0; r<=4; r++)
    for (c=0; c<=49; c++)
         nombre[r][c]=' ';
   
    cout << "Registros disponibles: ";
   
    for (r=0; r<=4; r++)
    if(nombre[r][0]==' ')
    printf("%i ", r+1);
   
    if (nombre[0][0]!=' ' && nombre[1][0]!=' ' && nombre[2][0]!=' ' && nombre[3][0]!=' ' && nombre[4][0]!=' ' )
    printf("Ninguno");
    else
    cout << endl;
   
    printf("Que registro desea editar (1 - 5): ");
    scanf("%i", &op);
    switch (op){
           case 1:
                if (nombre[0][0]==' ')
                {printf("Teclea el nombre a ingresar: ");
                scanf("%[^\n]", nombre[0]);}
                else
                printf("Registro ya ocupado por: %s \n", nombre[0]);
                break;
           case 2:
                if (nombre[2][0]!=' ')
                printf("Registro ya ocupado por: %s \n", nombre[1]);
                else
                printf("Teclea el nombre a ingresar: "), scanf("%[^\n]", nombre[1]);
                break;
           case 3:
                if (nombre[3][0]!=' ')
                printf("Registro ya ocupado por: %s \n", nombre[2]);
                else
                printf("Teclea el nombre a ingresar: "), scanf("%[^\n]", nombre[2]);
                break;
           case 4:
                if (nombre[3][0]!=' ')
                printf("Registro ya ocupado por: %s \n", nombre[3]);
                else
                printf("Teclea el nombre a ingresar: "), scanf("%[^\n]", nombre[3]);
                break;
           case 5:
                if (nombre[4][0]!=' ')
                printf("Registro ya ocupado por: %s \n", nombre[4]);
                else
                printf("Teclea el nombre a ingresar: "), scanf("%[^\n]", nombre[4]);
                break;
           default: cout<< "Has ingresado un dato erroneo\n";
}
    cout << endl;
    cout << endl;
    system("pause");
    return 0;
}
10  Programación / Programación C/C++ / Re: AYUDA EN DEV C++ (urgente)(soy novato). en: 4 Mayo 2010, 01:03 am
Alguien que me pudiera explicar como realizar lo siguiente:

El programa que debo hacer me pide que ingrese 5 nombres, para esto debo crear un menu que me pregunte cual registro deseo ingresar y al ingresar el numero de registro el programa me indique si esta libre o ya existe un nombre en ese registro de lo contrario me imprima que el registro ya esta ocupado por un nombre y me diga si quiero ingresar otro nombre en otro registro.

En el siguiente programa ya pude ingresar los 5 registros pero no se como hacer lo anteror.



#include <iostream>
#include <stdlib.h>

using namespace std;

int main(){
    char nombres[5][50]={};
    int nom;
    int R,registro;
   
   
   
   
   
    for (registro=0; registro<=4; registro++){
         cout << "registro" << registro+1 << "=" << nombres[registro] << endl;
         }
 
 
 
   
    for(R=0; R<=5; R++)
    nombres[R];
   
       
   
    for(registro=0; registro<=0; registro++)
    for(nom=0; nom<=4; nom++){
               cout << "Ingresa el nombre " << registro+1 << "del registro" << nom+1 << ": ";
               
         
               
    cin >> nombres[registro];
    if (nom < 4); 
   
}

 
    system("pause");
   
    return 0;
}
   
Páginas: [1] 2
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines