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 - pMV2ere

#1
Programación C/C++ / Re: problema scanf
31 Octubre 2013, 20:01 PM
Cita de: vangodp en 31 Octubre 2013, 19:47 PM
el programa principal debe llamar se main y el signo %delante de %readVal creo que sobra no? :-\
Se recomienda poner return 0; al final por que la funcion devuelve un entero, aun que no recuerdo el motivo...por portabilidad o yo que se  :)

he quitado el % y nada.  El nombre del programa no influye, lo he probado.


el return si que me ha solucionado de la linea 25
#2
Programación C/C++ / problema scanf
31 Octubre 2013, 19:10 PM
buenas, no veo que estoy haciendo mal, supongo que sera algo básico pero....

El error que me sale es en la fila 16 i 25(el error es el mismo en ambas filas). marco con ------------para q lo veáis mejor.

Los guiones obviamente no estan en el programa original

El error es:   error:expected expression before "%" token.


en el ultimo } tambien me sale un warning: control reaches end of non-void function


/*fitxers*/
#include <stdio.h>
#include <stdlib.h>

/*constants*/
const int END= -1;
const int THOUSAND= 1000;

/*programa*/
int roundToThousand()
{
   /*variables*/
   int thousands , readVal , total;

   total=0;
   scanf("%d",%readVal);--------------------------
   while(readVal!=END){
       thousands=(readVal+500)/ THOUSAND;
       total=total+thousands;
       printf("%d",readVal);
       printf("%d",thousands);
       scanf("%d",%readVal);-----------------------------
   }
   printf("%d",total);
}---------------------------------



gracias de antemano
#3
Cita de: eferion en  2 Octubre 2013, 21:19 PM
Sería de ayuda entender lo que quieres conseguir y qué es lo que no funciona como esperas.


sólo tenía que traducir este código a C.
algorisme change
var
price, paid, diff, current, qtt: enter;
priceWithCents, paidWithCents: real;
fvar
priceWithCents:= readReal();
paidWithCents:= readReal();
price:= realToInt(priceWithCents * 100.0 + 0.5);
paid:= realToInt(paidWithCents * 100.0 + 0.5);
diff:= paid – price;
writeReal( intToReal(diff) / 100.0 );
current:= 50000;
mentre diff > 0 fer
qtt:= diff div current;
05.554 · FP· PAC1 · 2013-01 · Programa · Estudis d'Informàtica Multimèdia i Telecomunicació
14
si qtt > 0 llavors
writeInteger( qtt );
writeReal( intToReal(current) / 100.0 );
fsi
diff:= diff mod current;
si current = 50000 o current = 5000 o current = 500 o current = 50 o current = 5 llavors
current:= realToInt( intToReal( current ) / 2.5 );
sino
current:= current div 2;
fsi
fmentre
falgorisme




Cita de: nouaman en  2 Octubre 2013, 21:25 PM
Otra cosa mas!!
el or se escribe hace con doble barra vertical ||

ahora sólo tengo problemas con el diff

el diff primero lo declaro asi pq el algoritmo calcula cuantas monedas/billetes dar de cambio.
El primero hace efectivo entregado-precio
el segundo sirve para pasar a un billete/moneda más pequeño

lo que no entiendo es pq va mal el primero y el segundo no

quizá sea de ayuda decir que en el error del diff dice: expected ";" before price
#4
las filas con ---------------------- no están en el código original
gracias por tu rspuesta, al menos ya me han contestado  :D
#5
Buenas amigos, hoy he hecho mi primer programa en C y no consigo ver los errores que he cometido.
Podéis ayudarme con esto? me da error en las filas con--------------------
en el error del diff dice: expected ";" before price
#6
Programación C/C++ / problema cout's
2 Diciembre 2012, 19:30 PM
buenas, no tengo ni idea de pq este programa no me devuelve los cout<<"ok"<<endl;
no tengo ni idea si es que mi codeblocks se ha bugeado o que :/

podeis provar a compilarlo y decirme si os sale algun "ok"? seria de mucha ayuda :)

pd: debeis introducir una sequencia como esta para iniciar el programa: 11 12 13 14 15 -1 12 14 -1(todo seguido)


Código (cpp) [Seleccionar]
#include <iostream>

using namespace std;

const int N=1000;
typedef int VectorC[N];

void llegirPremiats(VectorC& numeroP,VectorC& numeroL)
{
   int i=0;
   while(numeroP[i]!=-1){
       cin>>numeroP[i];
       cout<<numeroP[i]<<endl;
       i=i+1;
   }
   i=0;
           cout<<"ok1"<<endl;
   while(numeroL[i]!=-1){
       cin>>numeroL[i];
       cout<<numeroL[i]<<endl;
       i=i+1;
   }
   cout<<numeroL[4]<<"ok1"<<endl;
}
void comparar(VectorC numeroP,VectorC numeroL)
{
   int i=0,j=0;
   cout<<"ok2"<<endl;
   while(numeroP[i]!=-1){
       while(numeroL[j]!=-1){
           cout<<"ok"<<endl;
           if(numeroP[i]==numeroL[j])
               cout<<numeroP[i];
           else
               j=j+1;
       }
       j=0;
       i=i+1;
   }
   cout<<"bfddf"<<endl;
}
int main()
{
   VectorC numeroP,numeroL;
   llegirPremiats(numeroP,numeroL);
   cout<<"ok4"<<endl;
   comparar(numeroP,numeroL);

}
#7
la programacion es con C++

he intentado lo que me dijiste, pero solo consigo guardar la primera palabra :(
#8
yo hace poco hice un ejercicio de mayusculas y minusculas...

quiza podria ayudarte tratar los caracteres como numeros(cada letra tiene un numero asociado)

a..z=97..122
A..Z=65..90
#9
buenas, tengo que realizar un ejercicio en C++ y no consigo guardar correctamente la informacion.

el problema es basicamente, saber como guardar unos numeros separados por espacios.

el problema es:
Nos introducen un numero de telefono, su duracion y su precio.
tendremos que guardar el numero en la primera posicion del vector telefono, la duracion en la primera posicion del vector tiempo y el precio en la primera posicion del vector precio y asi sucesivamente.

Ejemplo de secuencia:
972515151 2.1 0.46 972565656 0.4 0.09 0 (el 0 indica fin de secuencia)

como consigo guardar el 972515151 en el vector telefono casilla 1 por ejemplo?

gracias :)
#10
Programación C/C++ / duda tuplas
11 Noviembre 2012, 14:08 PM
buenas :)
no entiendo porque cuando introduzco valores en "Tiempo", salen iguales en la accion "copiaTiempo", pero en el main salen unos numeros totalmente deiferentes :/

si lo ejecutais lo vereis.
ejemplo:
introduzco 1 2 3 4
1r cout: 1 2 3 4
2o cout 19734... 96806... -2 19733...


Código (cpp) [Seleccionar]
#include <iostream>

using namespace std;


struct Tiempo{
   int dias;
   int horas;
   int minutos;
   int segundos;
};
Tiempo copiaTiempo(){
   Tiempo t;
   cout<<"dias"<<endl;
   cin>>t.dias;
   cout<<"horas"<<endl;
   cin>>t.horas;
   cout<<"minutos"<<endl;
   cin>>t.minutos;
   cout<<"segundos"<<endl;
   cin>>t.segundos;
   cout<<t.dias<<"    "<<t.horas<<"    "<<t.minutos<<"    "<<t.segundos<<endl;
}

int main()
{
   Tiempo t=copiaTiempo();
   cout<<t.dias<<"    "<<t.horas<<"    "<<t.minutos<<"    "<<t.segundos<<endl;
}