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ú

Mensajes - satu

#211
Hola

Para hacer lo que pides debes recorrer la cadena desde el final hasta la posición que quieres y luego insertas. Un ejemplo:


int main()
{
.......
.......
int i;
i = strlen(R); // almacena en i la longitud de la cadena
R[i+1] = '\0'; // finalizamos la cadena
for(; i>P; i--) // vamos recorriendo la cadena de atrás hacia delante
    R[i] = R[i-1];
R[i] = T; // insertamos el nuevo caracter
..........
..........
return 0;
}


Y para quitar un caracter lo que debes hacer es recorrer la cadena desde la posición que quieres hasta el final sobrescribiendo los caracteres:

for(i=P; i<strlen(R); i++)
    R[i] = R[i+1];


Además debes tener en cuenta que main debe devolver un int para indicar al SO el resultado de su finalización y que no es bueno utilizar conio porque está en desuso. Léete esto

Saludos
#212
Hola

No tiene sentido, pon la parte del código donde tienes los comentarios para que veamos pero en principio debería funcionar.

Asegúrate de que son las barras // o que no se te olvide algún ;

Saludos
#213
Hola

Varias cosas:
-Escribes fatal, deberías cuidar un poco eso porque cuesta entenderte
-Estructura el código para que sea mas legible
-Léete esto
-Utiliza la etiqueta GeSHi para el código (la tienes junto al botón de elegir el tipo de fuente)

Te dejo el código, creo que es esto lo que pides, espero que te sirva


#include <stdio.h>

int main ()
{
    int A, PM;
    char opcion=0;

    printf("Introduce el limite de presion de la caldera: " );
    scanf("%d",&PM);

    while(opcion!='s' && opcion!='S')
        {
        printf("\nIntroduce la lectura de presion de la caldera: ");
        scanf("%d",&A);

        if (A>=PM)
            {
            do
                {
                printf("\n\nPRECAUCION. la caldera ha llegado a la presion limite. DEBE DESIPAR LA PRESION\n\n");
                printf("Quieres apagarla(S) o desipar la presion(D)?\n");
                while(getchar()!='\n');
                scanf("%c", &opcion);
                }
            while(opcion!='S' && opcion!='s' && opcion!='D' && opcion!='d');
            if(opcion=='s' || opcion=='S')
                printf("La caldera ha sido apagada. Pulsa una tecla para salir\n\n");
            else
                printf("La caldera se encuentra funcionando normalmente\n\n");
            }
        else
            printf("la caldera puede seguir trabajando\n\n");
        }


    while(getchar()!='\n');
    getchar();
    return 0;
}


Si tienes alguna duda ya sabes donde estamos

Saludos
#214
Hola

Lo estoy probando y funciona normal, no tengo que pulsar 2 veces enter, lo que sí te voy a corregir es el #include <string>, que en C++ es #include <cstring> y el carácter que pone no es /n sino \n

Por lo demás todo normal

Saludos
#215
mi pantalon

#216
Cita de: darkvidhack en 17 Mayo 2011, 22:10 PM
Muchas Gracias, ya he resuelto la duda

De nada, pa eso estamos

:P :P
#217
Hola

Creo que es porque en la función "fromCSV" no indicas el tipo de dato que es "entrada"
además  Piloto* *pilotos=new Piloto*[24]; sería Piloto* *pilotos=new *Piloto[24];
y también deberías pasarle "entrada" al constructor ya que desde el constructor llamas a la función con el parámetro

Código (cpp) [Seleccionar]

#include "Piloto.h"
#include <fstream>


int main () {


//Cargo los pilotos a memoria
ifstream entrada ("pilotos.csv");
Piloto* *pilotos=new *Piloto[24];     


    for(int i=0;i<24;i++){
    pilotos[i]=new Piloto(entrada);
    }

-------------------------------------------------------------------------------------
Piloto.cpp

Piloto::Piloto(ifstream &entrada) {

Piloto::fromCSV(entrada);

}

--------------------------------------------------------------------------------------
Metodo 'fromCSV'

void Piloto::fromCSV (ifstream &entrada) {

        getline(entrada,nom,';');
getline(entrada,ape,';');
entrada>>edad;             

}


Eso es lo que he visto, si tienes dudas o lo que sea aquí estamos

Saludos
#218
Foro Libre / Re: test coeficiente intelectual
17 Mayo 2011, 10:10 AM
130 con 26 minutos de sobra

#219
Hola

Así es, cuando termina el for de dentro e incrementa el de fuera se vuelve a ejecutar el de dentro entero, es decir, inicializando la variable "columna" a cero y haciendo todo el bucle for de nuevo. Eso pasará las 10 veces que se ejecute el for más externo

Saludos
#220
Aparte del "magnetismo" que yo NO me creo que tenga, el niño tiene un problema muy serio, cuando sea adulto estará enorme


[youtube=425,350]http://www.youtube.com/watch?v=PeX_GPFl-jU[/youtube]