Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - Jay

#1
Hola tengo una duda al final quiero comaprar las cadenas lenguaje con cadena pero me dice que no es igual no tengo idea por que es, otra duda es en que en el do while no lo toma en cuenta para volver a a comparar es decir si le das a la opcion 1 no repite el proceso


#include <stdio.h>
#include <string.h>
#include<time.h>
#include<stdlib.h>
#include<ctype.h>
#include <unistd.h>


int subCadena(char *cad, char *subCad, int ini, int fin)
{
   int iC, iS;

   if((ini>fin)|| (ini<0) || (fin>=strlen(cad)))
       return 0;

   iS = 0;
   for (iC = ini; iC<=fin; iC+=10){
       subCad[iS] = cad[iC];
       iS++;
   }

   subCad[iS] = '\0';

   return 1;

}


char *invertir(char cadena[]) {
 int longitud = strlen(cadena);
 char temporal;
 for (int izquierda = 0, derecha = longitud - 1; izquierda < (longitud / 2);
      izquierda++, derecha--) {
   temporal = cadena[izquierda];
   cadena[izquierda] = cadena[derecha];
   cadena[derecha] = temporal;
 }
 return cadena;
}

char *strstr(const char *haystack, const char *needle);

int strcmp(const char * s1,const char * s2);

int main()

{

srand(time(NULL));
int n = 1 + rand()% (3 - 1);
int n3;
int op;
int n2 = n*2;
char *alfabeto = "1599024 jonathan adrian gutierrez alvarado";
char i[7];
char w[10];
char winv[8];
char j[16];
char cadena[30];
char lenguaje[40];
char fraseN[sizeof(w) * n+1];
   strcpy(fraseN, w);
char fraseM[sizeof(winv) * n2];
   strcpy(fraseM,winv);

printf("El Alfabeto es: %s\n", alfabeto);

strncpy(i,&alfabeto[0],7);
  i[7] = '\0';

strncpy(j,&alfabeto[8],16);
  j[8] = '\0';

if(subCadena(alfabeto,w,24,35) == 0){

       printf("Error");
   }

if(subCadena(alfabeto,winv,24,35) == 0){

       printf("Error");
   }


       for(int i = 0; i < n; ++i){
               strcat(fraseN, w);
           }
       for(int i = 0; i < n2; ++i){
               strcat(fraseM, winv);
           }

       strcat(lenguaje, i);
       strcat(lenguaje, fraseN);
       strcat(lenguaje, i);
       strcat(lenguaje, invertir(fraseM));
       strcat(lenguaje, j);
       strcat(lenguaje, j);
       printf("\nEste es el lenguaje: %s\n", lenguaje);


do{
  printf("\nIntroduce la cadena a verificar: \n");
       gets(cadena);

       if (strcmp(lenguaje, cadena)== 0) {
           printf("\nSon iguales", cadena);
           } else {
               printf("\nNo son iguales", cadena);
           }
       printf("\nDesea introducir otra cadena: \n1) SI \n2)NO\n");
       scanf("%d", &op);

}while(op < 2);



   system("\n pause");
}






#2
Programación C/C++ / Ayuda con arreglo char
28 Octubre 2020, 03:22 AM
Hola amigos, tengo una duda con un arreglo char lo que pasa es que necesito que el arreglo que tengo declarada como w y quiero que se repita n veces  y tengo la invetida de w 2n veces, pero esa n quiero que sea capturada por el usuario


#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>

char *invertir(char cadena[]) {
  int longitud = strlen(cadena);
  char temporal;
  for (int izquierda = 0, derecha = longitud - 1; izquierda < (longitud / 2);
       izquierda++, derecha--) {
    temporal = cadena[izquierda];
    cadena[izquierda] = cadena[derecha];
    cadena[derecha] = temporal;
  }
  return cadena;
}



int subCadena(char *cad, char *subCad, int ini, int fin)
{
    int iC, iS;

    if((ini>fin)|| (ini<0) || (fin>=strlen(cad)))
        return 0;

    iS = 0;
    for (iC = ini; iC<=fin; iC++){
        subCad[iS] = cad[iC];
        iS++;
    }

    subCad[iS] = '\0';

    return 1;

}


int subCadenaApellido(char *cad, char *subCad, int ini, int fin)
{
    int iC, iS;

    if((ini>fin)|| (ini<0) || (fin>=strlen(cad)))
        return 0;

    iS = 0;
    for (iC = ini; iC<=fin; iC+=8){
        subCad[iS] = cad[iC];
        iS++;
    }

    subCad[iS] = '\0';

    return 1;

}

char *strstr(const char *haystack, const char *needle);



int main(){


    char alfabeto[38]="1809669 mario alberto charles martinez",i[38], w[38],winv[38], j[38], lenguaje[34];
    char cadena[37], k[37];
    int n;

    printf("Introduce el valor de n: ");
    scanf("%d", &n);

        printf("Introduce la cadena a verificar: ");
        scanf("%s", &cadena);

    if(subCadena(alfabeto,i,0,6) == 0){

        printf("Error");

    }

    if(subCadenaApellido(alfabeto,w,22,30) == 0){

        printf("Error");
    }

    for(int i=1; i<n; ++i){
        k[i] = w;
        printf("%s", k);

    }

    if(subCadena(alfabeto,i,0,6) == 0){

        printf("Error");

    }

    if(subCadenaApellido(alfabeto,winv,22,30) == 0){

        printf("Error");
    }

     if(subCadena(alfabeto,j,8,12) == 0){

        printf("Error");

    }

    strcat(lenguaje, i);
    strcat(lenguaje, w);
    strcat(lenguaje, i);
    strcat(lenguaje, invertir(winv));
    strcat(lenguaje, j);
    strcat(lenguaje, j);


    if (strstr(lenguaje, cadena) != NULL) {
    printf("Existe %s dentro de %s\n", cadena, lenguaje);
    } else {
    printf("No existe %s dentro de %s\n", cadena, lenguaje);
    }

}





Espero me puedan ayudar, gracias
#3
Programación C/C++ / Duda con arreglo
20 Octubre 2020, 09:34 AM
Tengo una duda con un arreglo de una subcadena de un alfabeto
Si por ejemplo tengo :

char [i] = "a" ;
int n;

Como hago para elevar por ejemplo n potencia es decir que me aparezcan
aaa si n = 3
#4
Bases de Datos / Ayuda con Query Mysql
23 Febrero 2020, 02:34 AM
Tengo este query que necesito que me traiga el total del precio unitario quitandole el descuento y que lo acomode de maximo a minimo pero cuando lo hago solo me trae la fecha de compra y el nombre del empleado.
La columna de UnitPrice, Quantity, Discount se encuentran en una tabla llamada orderdetails con llave primaria OrderID

Ayuda

Código (sql) [Seleccionar]



SELECT C.ContactName, O.OrderID, CONCAT (FirstName,' ',LastName) AS
Employee,
O.OrderDate, O.RequiredDate, O.ShippedDate /*,
Max((SUM((Od.UnitPrice*Od.Quantity)*(1-Od.Discount)))),
Min((SUM((Od.UnitPrice*Od.Quantity)*(1-Od.Discount))))'Total de Orden' */
FROM Customers C INNER JOIN Orders O
ON C.CustomerID = O.CustomerID INNER JOIN Employees E
ON O.EmployeeID=E.EmployeeID /*INNER JOIN OrderDetails Od
ON O.OrderID=Od.OrderID */
WHERE C.ContactName = 'Ana Trujillo'


#5
Programación C/C++ / Ayuda con error
30 Agosto 2019, 22:57 PM
No logre ver por que la solucion con numeros complejos no me sale bien en mi codigo y tampco puedo quitar los signos repetido -- del lado de la factorizacion es decir (x - 2) ^2 asi deberia quedar y me sale (x--2)^2

#include<cmath>
#include<iostream>

using namespace std;


inline float LeerNum(){
    float var;
    cin >> var;
    return var;
}

float Discriminante(float num1, float num2, float num3);

float SolucionPos(float, float, float);

float SolucionNeg(float, float, float);

float SolucionCuadrada(float num1, float num2);//!Variables/obj/arreglos

int main(){
    cout << "Ingrese los coeficientes: ";
    float a = LeerNum(), b = LeerNum(), c = LeerNum();
    if(Discriminante(a,b,c) == 0){

        if((b>0) && (c>0)){
            cout << "Factorizacion:\n(x - " <<
            SolucionCuadrada(a,b) << ")^2 = "
            << a << "x^2 + " << b << "x + " << c;


        }else if((b>0) && (c<0)){

        cout << "Factorizacion:\n(x - " <<
            SolucionCuadrada(a,b) << ")^2 = "
            << a << "x^2 + " << b << "x  " << c;

        } else if((b<0) && (c>0)){

        cout << "Factorizacion:\n(x - " <<
            SolucionCuadrada(a,b) << ")^2 = "
            << a << "x^2  " << b << "x + " << c;

        } else if((b<0) && (c<0)){

        cout << "Factorizacion:\n(x - " <<
            SolucionCuadrada(a,b) << ")^2 = "
            << a << "x^2  " << b << "x  " << c;

        }



    }
    else if(Discriminante(a,b,c) > 0){

            if((b>0)&& (c>0)){
            cout << "Factorizacion:\n(x - " <<
            SolucionPos(a,b,c) << ")*(x - "
            << SolucionNeg(a,b,c) << ") = "
            << a << "x^2 + " << b << "x + " << c;

            }else if((b<0)&& (c>0)){
            cout << "Factorizacion:\n(x - " <<
            SolucionPos(a,b,c) << ")*(x - "
            << SolucionNeg(a,b,c) << ") = "
            << a << "x^2  " << b << "x  + " << c;

            }else if((b>0)&& (c<0)){

            cout << "Factorizacion:\n(x - " <<
            SolucionPos(a,b,c) << ")*(x - "
            << SolucionNeg(a,b,c) << ") = "
            << a << "x^2 + " << b << "x   " << c;
            }else if((b<0)&& (c<0)){
            cout << "Factorizacion:\n(x - " <<
            SolucionPos(a,b,c) << ")*(x - "
            << SolucionNeg(a,b,c) << ") = "
            << a << "x^2  " << b << "x   " << c;
            }

    }
    else if(Discriminante(a,b,c) < 0){
          if((b>0)&& (c>0)){
            cout << "Factorizacion:\n(x - " <<
            SolucionPos(a,b,c) << "i)*(x - "
            << SolucionNeg(a,b,c) << "i) = "
            << a << "x^2 + " << b << "x + " << c;

            }else if((b<0)&& (c>0)){
            cout << "Factorizacion:\n(x - " <<
            SolucionPos(a,b,c) << "i)*(x - "
            << SolucionNeg(a,b,c) << "i) = "
            << a << "x^2  " << b << "x  + " << c;

            }else if((b>0)&& (c<0)){

            cout << "Factorizacion:\n(x - " <<
            SolucionPos(a,b,c) << "i)*(x - "
            << SolucionNeg(a,b,c) << "i) = "
            << a << "x^2 + " << b << "x   " << c;
            }else if((b<0)&& (c<0)){
            cout << "Factorizacion:\n(x - " <<
            SolucionPos(a,b,c) <<"i)*(x - "
            << SolucionNeg(a,b,c) << "i) = "
            << a << "x^2  " << b << "x   " << c;
            }

    }

    return 0;
}

float Discriminante(float a, float b, float c){
    return b*b - 4*a*c;
}

float SolucionPos(float a, float b, float c){
    return (-b+sqrt(Discriminante(a,b,c)))/(2*a);
}

float SolucionNeg(float a, float b, float c){
    return (-b-sqrt(Discriminante(a,b,c)))/(2*a);
}

float SolucionCuadrada(float a, float b){
    return -b/(2*a);
}




#6
Ayuda no se que hacer en el tercer paso de este programa ya realice el algoritmo y me dispongo a programarlo pero el tercer punto le doy vueltas y no se como realizarlo


Para solicitar un crédito el usuario debe ser cliente de al menos 3 meses de antigüedad además la compra a solicitar debe ser de un precio mayor a los $10,000 pesos, una vez cumpliendo estas condiciones el departamento de créditos debe solicitar referencias y solicitar a los bancos información del historial del cliente, así mismo se pasa al departamento de investigación para obtener información respecto a aspectos laborales, penales, Civiles, sindicales e IMSS.

Paso 1) Verificar que el usuario tenga como mínimo 3 meses de antigüedad como cliente.
   Paso 2) La compra del cliente debe ser mayor a los $10,000 pesos.
   Paso 3) Solicitar al departamento de créditos referencias del cliente.



1. Inicio
2. Declaración de variables:
Entero mesesAntigüedad, compra;
Char nombre;
3. Imprimir "Digite su nombre"
4. Leer Nombre
5. Imprimir "Digite la cantidad de meses que tiene como cliente"
6. Leer mesesAntiguedad
7. Imprimir "Digite el monto de la compra a realizar"
8. Leer compra
9. Si mesesAntiguedad >=3 && cantidad > 10000
Imprimir "Porfavor dame algunas referencias del cliente "






#7
Hola, como estan amigos , veran tengo un problema que consiste en: Un programa donde se introduzcan numero de lados, area y perimetro y detecte a que figura geometrica corresponde: Circulo, triangulo, rectangulo, cuadrado, trapecio o rombo. He estado batallando para saber si es un rectangulo y el trapecio los otros creo que yo que ya estan bien pero aun asi no se como realizar el rectangulo y trapecio podria poner perimeto/2 - b = a y despues usar la formula del area



#include<iostream>
#include<math.h>

using namespace std;


int main()
{

float numeroLados, perimetro, area, ladoCuadrado, perimetroCuadrado, baseRombo, alturaRombo, a, b, ladosRectangulo;


    cout<<"Introduce el numero de lados de tu figura: "<<endl;
    cin>>numeroLados;
    cout<<"Introduce el perimetro de la figura: " <<endl;
    cin>>perimetro;
    cout<<"Introduce el area de la figura: "<<endl;

    cin>>area;

        ladoCuadrado = sqrt(area);
        perimetroCuadrado = (perimetro / 4.0f);

        baseRombo = (perimetro / 4.0f);
        alturaRombo = (area / baseRombo );


        if(numeroLados == 3)
        {
            cout<<"Es un triangulo";


        }
        else if (numeroLados == 0)
        {
           cout<<"Es un circulo";
        }
        else if ((numeroLados == 4) && (ladoCuadrado == perimetroCuadrado) )
        {
            cout<<"Es un cuadrado";
        } else {


            cout<<"Introduce un numero de lados valido";

        }



        if((numeroLados == 4) && (baseRombo * alturaRombo == area))
        {
            cout<<"Es un rombo";

        }else if(numeroLados == 4)
        {

            cout<<"Es trapecio";


        }


return 0;


}


#8
Programación C/C++ / Asunto con archivos C
29 Mayo 2019, 08:13 AM
Hola como estan, tengo una duda sobre archivos en c. Bueno lo que pasa es que requiero buscar algo dentro del archivo que acabo de crear es decir por ejemplo si pongo la clave ST1 me salga la informacion de eso en pantalla dicha informacion se encuentra en el archivo





FILE *archivo;
void reservaciones(){
char claveHabitacion[][20]= {"ST1"};
char *ptr=claveHabitacion[0];

archivo = fopen("ejemplo.txt", "a+");
fprintf(archivo, "\n La clave es: %s", ptr);
fwrite(&ptr, sizeof(ptr), 1, archivo);

}


//main(){ //Aqui es donde deberia escribir ST1 y que me saliera la informacion que llegase a guardar ahi. como seria para buscar dentro del archivo y llamarlo desde el main

fread(); // se me ocurrio leer





}







#9
Programación C/C++ / Ayuda con codigo
3 Mayo 2019, 22:58 PM
ayudenme con mi codigo no se que estoy haciendo mal se supone que al validar la fecha si introduces una fecha mal ya no deberia funcionar pero al parecer solo valida el mes ayuda, tambien necesito ayuda para apuntar a un elemento del arreglo
char claveHabitacion [10][10] = {"ST1", "ST2", "ST3", "ST4", "ST5", "ST6", "ST7", "ST8", "ST9", "ST10"}; no se como hacerlo.

#include<stdio.h>
#include<stdlib.h>
#include <stdbool.h>


struct fechaEntrada
{

    int dia, mes, año;


}f1;


struct fechaSalida
{

    int dia, mes, año;

}f2;

struct tarjeta{

    int  cVc, tipo, formaPago;
    char nombreTitular[50];
    int mes, año;


}t1;



bool entrada(int dia, int mes, int año)
{
    bool verdero=1, falso=0;

            printf("\nIntroduzca la fecha de entrada: ");
            printf( "\n   Introduzca dia: ");
            scanf( "%d", &f1.dia );
            printf( "\n   Introduzca mes: " );
            scanf( "%d", &f1.mes );
            printf( "\n   Introduzca año: ");
            scanf( "%d", &f1.año );

    if ( f1.mes >= 1 && f1.mes <= 12 )
    {
        switch ( f1.mes )
        {
                    case  1 :
                    case  3 :
                    case  5 :
                    case  7 :
                    case  8 :
                    case 10 :
                    case 12 : if ( f1.dia >= 1 && f1.dia <= 31 )
                                {
                                     printf( "\n   FECHA CORRECTA \n" , verdero);
                                    return verdero;

                                } else
                                        printf( "\n   FECHA INCORRECTA \n", falso);
                                        return falso;
                      break;

                    case  4 :
                    case  6 :
                    case  9 :
                    case 11 : if ( f1.dia >= 1 && f1.dia <= 30 )
                                {
                                    printf( "\n   FECHA CORRECTA \n", verdero );
                                    return verdero;
                                }else
                                        printf( "\n   FECHA INCORRECTA \n", falso);
                                        return falso;
                      break;

                    case  2 : if( f1.año % 4 == 0 && f1.año % 100 != 0 || f1.año % 400 == 0 ){

                                    if ( f1.dia >= 1 && f1.dia <= 29 )
                                    {
                                        printf( "\n   FECHA CORRECTA \n", verdero);
                                            return verdero;
                                    }else
                                            printf( "\n   FECHA INCORRECTA \n", falso);
                                                return falso;
                            }else
                                if ( f1.dia >= 1 && f1.dia <= 28 )
                                {
                                      printf( "\n   FECHA CORRECTA \n", verdero);
                                            return verdero;
                                }else
                                    printf( "\n   FECHA INCORRECTA \n", falso);
                                            return falso;
        }
    }
    else
        printf( "\n   FECHA INCORRECTA \n", falso);





}


bool salida(int dia, int mes, int año)
{

  bool verdero=1, falso=0;

            printf("\nIntroduzca la fecha de salida: ");
            printf( "\n   Introduzca dia: ");
            scanf( "%d", &f2.dia );
            printf( "\n   Introduzca mes: " );
            scanf( "%d", &f2.mes );
            printf( "\n   Introduzca año: ");
            scanf( "%d", &f2.año );

    if ( f2.mes >= 1 && f2.mes <= 12 )
    {
        switch ( f2.mes )
        {
                    case  1 :
                    case  3 :
                    case  5 :
                    case  7 :
                    case  8 :
                    case 10 :
                    case 12 : if ( f2.dia >= 1 && f2.dia <= 31 )
                                {
                                     printf( "\n   FECHA CORRECTA \n" , verdero);
                                    return verdero;

                                } else
                                        printf( "\n   FECHA INCORRECTA \n", falso);
                                        return falso;
                      break;

                    case  4 :
                    case  6 :
                    case  9 :
                    case 11 : if ( f2.dia >= 1 && f2.dia <= 30 )
                                {
                                    printf( "\n   FECHA CORRECTA \n", verdero );
                                    return verdero;
                                }else
                                        printf( "\n   FECHA INCORRECTA \n", falso);
                                        return falso;
                      break;

                    case  2 : if( f2.año % 4 == 0 && f2.año % 100 != 0 || f2.año % 400 == 0 ){

                                    if ( f2.dia >= 1 && f2.dia <= 29 )
                                    {
                                        printf( "\n   FECHA CORRECTA \n", verdero);
                                            return verdero;
                                    }else
                                            printf( "\n   FECHA INCORRECTA \n", falso);
                                                return falso;
                            }else
                                if ( f2.dia >= 1 && f2.dia <= 28 )
                                {
                                      printf( "\n   FECHA CORRECTA \n", verdero);
                                            return verdero;
                                }else
                                    printf( "\n   FECHA INCORRECTA \n", falso);
                                            return falso;
        }


    }
    else
        printf( "\n   FECHA INCORRECTA \n", falso);

        return falso;

}

void reservacionStandard()
{
    int i=0, x=0;
    long long numeroTarjeta=9999999999999999;
    char claveHabitacion [10][10] = {"ST1", "ST2", "ST3", "ST4", "ST5", "ST6", "ST7", "ST8", "ST9", "ST10"};

                printf("\n Introduce tu forma de pago \n 1.-Tarjeta \n 2.-Efectivo \n");
                scanf("%d", &t1.formaPago);


                    printf("\n Introduce el numero de tarjeta: \n");
                    scanf("%d", &numeroTarjeta);
                        while(numeroTarjeta > 0)
                        {
                            numeroTarjeta = numeroTarjeta / 10;
                            i++;

                        }

                    //printf("%d", i);


                    if( i == 16)
                    {

                        printf("\nIntroduce el nombre del titular de la tarjeta: \n");
                        scanf("%s", &t1.nombreTitular);

                        printf("\nIntroduce el mes de vencimiento: \n ");
                        scanf("%d", &t1.mes);
                        printf("\nIntroduce el año de vencimiento: \n ");
                        scanf("%d", &t1.año);

                           if( t1.mes >= 1 && t1.mes <= 12 )
                            {

                                if(t1.año >= 2019 && t1.año <= 2026)
                                {

                                    printf("\n Introduce el CVC: \n");
                                    scanf("%d", &t1.cVc);

                                    while(t1.cVc > 0)
                                    {
                                        t1.cVc = t1.cVc / 10;
                                        x++;

                                    }

                                        if(x == 3)
                                        {
                                            printf("\n Estas son las habitaciones disponibles: \n");

                                                    for(i=0; i < 10 ; i++)
                                                    {
                                                        for(int j=0; j < 10; j++)
                                                            {
                                                                printf("%c", claveHabitacion[j]);
                                                            }

                                                        printf("\n");
                                                    }





                                        }else
                                            printf("\n El CVC no es correcto  \n");




                            } else
                                printf("\n año incorrecto intenta de nuevo \n");
                         }
                            else
                                printf("\n mes incorrecto intenta de nuevo \n");

                } else
                    printf("\nTarjeta No valida \n");



}





int main(){

        int op, o1, dia1, mes1, anio1, eleccion, cantidadPersonas, cantidadNoches, costo;


    do
    {
        printf("Hotel h&h");
        printf("\n1.-Reservaciones \n 2.-Cancelaciones \n 3.-Reportes \n 4.-Terminar \n");
        scanf("%d", &op);


        switch(op)
        {

            case 1:
                if(entrada(dia1, mes1, anio1) == 1)
                    {

                        if(salida(dia1, mes1, anio1) == 1)
                        {
                            cantidadNoches= ((f2.año-f1.año)*12 +(f2.mes-f1.mes))*30 + f2.dia- f1.dia;
                            costo = cantidadNoches*1250;
                            printf("\nLa cantidad de noches es: %d", cantidadNoches);
                             printf(" \nElige el tipo de habitacion : \n 1.-ST \n 2.-OB \n 3.-TB \n 4.-SU \n");
                            scanf("%d", &eleccion);
                            printf("\nEl costo total es: $%d \n", costo);

                            switch(eleccion)
                            {
                                case 1: printf("\nIntroduce cuantas personas ocuparan la habitacion: ");
                                        scanf("%d", &cantidadPersonas);

                                        if(cantidadPersonas <=2 )
                                        {
                                            reservacionStandard(costo);

                                        }


                            }


                        }


                    }
            break;

            case 2:
            break;

            case 3:

                do
                {
                    printf("Hotel h&h");
                    printf("\n1.-Reporte de reservaciones \n 2.- Reporte de habitaciones disponibles \n 3.-Regresar \n");
                    scanf("%d", &o1);

                    switch(o1)
                    {

                        case 1:
                        break;

                        case 2:
                        break;
                    }

                }while(o1 < 3);

                break;
            }

        }while(op < 4);


return 0;

}


#10
Hola tengo un arreglo bidimensional inicializado aqui, me gustaria saber como crear un apuntador que me apunte a un dato de este arreglo.
char claveHabitacion [10][10] = {"ST1", "ST2", "ST3", "ST4", "ST5", "ST6", "ST7", "ST8", "ST9", "ST10"};

char *pm;

pm=&claveHabitacion[9]; //por ejemplo aqui le digo que me asigne ala direccion de la posicion 9 de mi arreglo pero me marca un warning y no se imprime

pm=&claveHabitacion; // al igual al hacer esto me sige marcando warning y no se imprime se supone que deberia imprimirse el arreglo pero

porfavor ayuda por ejemplo yo solo quiero apuntar a ST1 y eso es lo que necesito imprimir ST1 es un elemento del arreglo
#11
#include<stdio.h>
#include <string.h>
#include <stdlib.h>


int main() {

typedef struct{

char nombrecliente[20][20];
int numpedido;



}pedido;


typedef struct{
int numcliente;
char direccion[20][20];
pedido p_nombrecliente;
pedido p_numpedido;



}servicio;


servicio P[10];

int i, j, m;
char aux[20];

for(i=0; i<1; i++){
printf("nombre: \n");
scanf("%s", &P.p_nombrecliente);
fflush(stdin);

printf("Ingresa tu numero de cliente: \n");
scanf("%d", &P.numcliente);


//printf("Tu numero de cliente es: %d", &P.numcliente);
printf ("Direccion: \n");
scanf("%s", &P.direccion);
fflush(stdin);
printf("numero de pedido: \n");
scanf("%d",&P.p_numpedido);

}

for(i=0; i<2; i++)
for(j=i+1; j<1; j++)
if(strcmp(P.p_nombrecliente, P[j].p_nombrecliente) > 0)
{
strcpy(aux, nombre);
strcpy(P.p_nombrecliente, P[j].p_nombrecliente);
strcpy(P.p_nombrecliente, aux);
}

no se que estoy haciendo mal al ordenar los nombres alfabeticamente y necesito las estructuras
#12
TENGO VARIAS DUDAS CON MI CODIGO
1- NO SE POR QUE CUANDO ME IMPRIME LA POSICION EN LA QUE ESTA EL NUMERO MAYOR Y EL MENOR ME DA LA MISMA POSICION DEBERIA SER DIFERENTE

2- COMO PUEDO CONTAR LA CANTIDAD DE NUMERO POSITIVOS QUE SON Y CUALES SON, YA CONSIGO QUE ME HAGA LA SUMA DE LOS NUMEROS POSITIVOS Y NEGATIVOS PERO NO CONSIGO SABER COMO IMPRIMIR CUALES SON Y CUANTOS SON



#include <stdio.h>


int main()
{
        int arreglo[50],i, numero=10, positivos=0, negativos=0, ceros=0, mayor=0, menor=0, posicion=0;



        for (i = 0; i<numero; i++)//Se llena el arreglo con los 10 elementos que le pones
        {
        printf("Introduzca numero: \n");
        scanf("%d",&arreglo);

        }

        for(i=0; i<numero; i++){

            if(arreglo > mayor){
          mayor = arreglo;
          posicion = i;

        }

        if(arreglo < menor){
          menor = arreglo;
          posicion = i;

        }
        }

      for(i = 0; i<numero; i++)
        {
        if(arreglo > 0)
            positivos+=arreglo;

        }


      for(i = 0; i<numero; i++)
        {
        if(arreglo < 0)
            negativos+=arreglo;

        }




      printf("\nSuma de numeros positivos: %d", positivos);
      printf("\nSuma de numeros negativos: %d", negativos);
      printf("\nEl numero mayor es: %d y se encuentra en la posicion: %d", mayor,posicion);
      printf("\nEl numero menor es: %d y se encuentra en la posicion: %d", menor,posicion);



    return 0;
}
#13
Programación C/C++ / Ayuda con programa de c
13 Febrero 2019, 23:30 PM
tengo este programa en c++ que intento trasladar a c pero por alguna razon no me sale el resultado de la conversion alguien me puede decir que hago mal

Código (cpp) [Seleccionar]

//este es el programa en c++
#include<iostream>

using namespace std;


int main(){

float pesos, francos;

cout<<"introduce la cantidad de pesos a convertir: ";
cin>>pesos;


francos=pesos*0.05f;



cout<<"tu cantidad en fracos es: " << francos;




return 0;



}

//y este el de c
#include<stdio.h>

int main(){

float pesos, francos;

printf("Introduce la cantidad de pesos que deseas convertir: ");
scanf("%d", &pesos);

francos = pesos * 0.05;

printf( "La cantidad de francos es: ", francos);


return 0;

}



[MOD] para publicar código, usar las etiquetas GeSHi.
#14
Hola buenas noches tengo el problema con mi codigo
ME TRABE EN EL PUNTO 2 POR QUE UNA VEZ QUE LO METO EN EL IF YA NO ME PIDE QUE INGRESE EL NOMBRE
EN EL PUNTO 7 QUE SE LLEVARAN 3 CONTADORES TAMPOCO PUDE HACERLO
EL PUNTO 9 DE VALIDAR LAS OPCIONES DEL JUEGO
Y EL PUNTO 10 Y 11 AYUDA

Se pide que:
1. El programa inicia con un menu de dos opciones, Iniciar juego o Salir.
2. El juego iniciara preguntando al jugador su nombre, el cual debe admitir nombres conformados
por una o mas palabras.
3. Despues de que se capture el nombre, se preguntara al jugador que nivel desea jugar:
Normal. Solo utiliza piedra, papel y tijera.
Avanzado. Utiliza piedra, papel, tijera, lagarto y Spock.
4. El usuario podra elegir la opcion que utilizara para su jugada, dependiendo del nivel que seleccion.
5. Se generar´a de manera aleatoria la opcion con la que "jugar´a" la computadora.
6. Considerando la opcion ingresada por el usuario y la generada por la computadora se evaluara
si el usuario gano, perdio o empato.
7. Se llevaran 3 contadores, uno para cada caso (ganar, perder, empatar), y se incrementara el contador correspondiente.
8. El usuario podra repetir el juego cuantas veces quiera.
9. Es importante validar que:
La opcion ingresada exista.
Al solicitar que ingrese un numero no se ingrese una letra.
10. Al terminar de jugar se deberan desplegar en pantalla los contadores de juegos ganados, perdidos
y empatados.
11. Tambien se debera llevar el historial de resultados del juego, para poder saber que juegos gano,
perdio o empato. Se recomienda utilizar un arreglo para este punto.

Código (cpp) [Seleccionar]


#include <iostream>
#include <cctype>
#include <cstdlib>
#include <ctime>
#include <string.h>

using namespace std;

string Usuario();
string Usuario1();
string Maquina();
string Maquina1();
void DeterminaGanador(string, string string);
void DeterminaGanador1(string, string, string, string, string);

string Usuario(){

int eleccion;

do{
cout<< "Porfavor presiona 1=Papel, 2=Piedra, 3=Tijeras: ";
cin>>eleccion;


}while(eleccion < 1 || eleccion > 3);


if(eleccion == 1)
return "Papel";
else if(eleccion == 2)
return "Piedra";
else
return "Tijeras";

}

string Usuario1(){

int eleccion;

do{

cout<< "Porfavor presiona 1=Papel, 2=Piedra, 3=Tijeras, 4=Spock, 5=Lagarto: ";
cin>>eleccion;

}while(eleccion < 1 || eleccion > 5);

if(eleccion == 1)
return "Papel";

else if(eleccion == 2)
return "Piedra";
else if(eleccion == 3)
return "Tijeras";
else if(eleccion == 4)
return "Spock";

else
return "Lagarto";





}

string Maquina(){
int numero;

numero = (rand()%3)+1;

if(numero ==1)
return "Papel";
else if(numero == 2)
return "Piedra";
else
return "Tijeras";

}

string Maquina1(){
int numero;

numero = (rand()%5)+1;

if(numero ==1)
return "Papel";
else if(numero == 2)
return "Piedra";
else if(numero == 3)
return "Tijeras";
else if(numero == 4)
return "Spock";
else
return "Lagarto";

}

void DeterminaGanador(string nombre, string Jugador, string Maquina){
int ganar, empatar, perder;
if(Jugador == Maquina)
cout<< "Empate" << endl;
else
if((Jugador == "Piedra" && Maquina == "Tijeras") ||
(Jugador == "Papel" && Maquina == "Piedra") ||
(Jugador == "Tijeras" && Maquina == "Papel") )

cout << "Resultado: "<< nombre<< " Eres el Ganador"<< endl;

else
cout << "Resultado: La Maquina Gana"<<endl;

}

void DeterminaGanador1(string nombre, string Jugador, string Maquina){
int ganar, perder, empatar;
if(Jugador == Maquina)
cout<< "Empate" << endl;

else if((Jugador == "Piedra" && Maquina == "Tijeras") ||
(Jugador == "Papel" && Maquina == "Piedra") ||
(Jugador == "Tijeras" && Maquina == "Papel") ||
(Jugador == "Piedra" && Maquina == "Lagarto") ||
(Jugador == "Lagarto" && Maquina == "Spock") ||
(Jugador == "Spock" && Maquina == "Tijeras") ||
(Jugador == "Tijeras" && Maquina == "Lagarto") ||
(Jugador == "Lagarto" && Maquina == "Papel") ||
(Jugador == "Papel" && Maquina == "Spock") ||
(Jugador == "Spock" && Maquina == "Piedra") )

cout << "Resultado: "<< nombre<<"Eres el Ganador" << endl;

else
cout << "Resultado: La Maquina Gana" << endl;

}

struct nombreUsuario{

char nombre[20];

}nombreUsuario1;

int main()
{
string movimientoJugador;
string OponenteMovimiento;
char res;
srand(time(NULL));
string nombreJugador;
int seleccion;
int eleccion;


cout<<"Indica el numero de tu seleccion" <<endl;
cout<<"(1) Iniciar Juego"<<endl;
cout<<"(2) Salir"<<endl;
cin>>seleccion;


if(seleccion==1){

cout <<"Bienvenido al Juego. Porfavor Introduce un nombre: ";
cin.getline(nombreUsuario1.nombre, 20, '\n');

cout<<"Hola: "<<nombreUsuario1.nombre<<endl;

cout<<"Indica como quieres jugar"<<endl;
cout<<"(1) Normal"<<endl;
cout<<"(2) Avanzado"<<endl;
cin>>eleccion;

if(eleccion==1){

do{
movimientoJugador = Usuario();
OponenteMovimiento = Maquina();

cout << "Juegas con: " << movimientoJugador << endl;
cout << "La maquina juega con: " << OponenteMovimiento << endl;

DeterminaGanador(nombreJugador, movimientoJugador, OponenteMovimiento);

cout << "Quieres volver a jugar? [s/n]";
cin>>res;


}while(toupper(res) == 'S');
if(toupper(res) == 'N'){
cout << "Termina el juego estos son tus resultados!" <<endl;
cin>>res;

}



}

if(eleccion==2){

do{

movimientoJugador = Usuario1();
OponenteMovimiento = Maquina1();

cout << "Juegas con: " << movimientoJugador << endl;
cout << "La maquina juega con: " << OponenteMovimiento << endl;

DeterminaGanador1(nombreJugador, movimientoJugador, OponenteMovimiento);

cout << "Quieres volver a jugar? [s/n]";
cin>>res;


}while(toupper(res) == 'S');
if(toupper(res) == 'N'){
cout << "Termina el juego estos son tus resultados!" <<endl;
cin>>res;

}

}

}

if(seleccion==2){
cout<<"Gracias por participar";

} else(cout<<"Opcion no valida");





}





[MOD] Para publicar código usar las etiquetas GeSHi