Autor
|
Tema: problema con este codigo (Leído 2,345 veces)
|
letisen
Desconectado
Mensajes: 4
|
tengo este codigo que funciona para la mayoriua de los inputs pero hay algunos para los que me regresa error, como por ejemplo para este input: " -1000000000000000000 1 1000000000000000000 " #include <iostream> #include <cstdio>
using namespace std; int x,y,m; int aux=0; int toPerfect(int a,int b,int per){ if(a >= per || b >= per){ aux=0; }else if(a<=0 && b<=0){ aux = -1; }else{ while(a < per && b < per){ if(a > b){ b = b+a; }else{ a = a+b; } aux++; } } return aux; }
int main(){ cin >>x>>y>>m; cout << toPerfect(x,y,m) << endl; cin.get(); }
|
|
|
En línea
|
|
|
|
dato000
Desconectado
Mensajes: 3.034
|
son números demasiado grandes, una variable tipo int no admite ese tipo de valores, para eso usa long o arreglos o punteros (bueno es lo mismo pero diferente ) para esos valores tan grandes. Consulta esta tabla: http://www.zator.com/Cpp/E2_2_4.htmslds
|
|
|
En línea
|
|
|
|
letisen
Desconectado
Mensajes: 4
|
son números demasiado grandes, una variable tipo int no admite ese tipo de valores, para eso usa long o arreglos o punteros (bueno es lo mismo pero diferente ) para esos valores tan grandes. Consulta esta tabla: http://www.zator.com/Cpp/E2_2_4.htmslds Pero al usar "long" o "long long int" en vez de "int" simplemente no termina el programa, se queda en stand-by .
|
|
|
En línea
|
|
|
|
dato000
Desconectado
Mensajes: 3.034
|
cambiaste también las funciones??? también deben ser de un tipo acorde a los valores que manejas.
|
|
|
En línea
|
|
|
|
letisen
Desconectado
Mensajes: 4
|
yes i change it. this is my code now but also didnt work. #include <iostream> #include <stdio.h>
using namespace std;
long long int n,k,cont=0; long long int aux; int main(){ cin >>n>>k; //imprime impares hasta n for(long long int i=1;i<=n;i++){ if( i%2 != 0){ //cout << i << endl; cont++; if(cont == k){ aux=i; } } } //imprime pares hasta n for(long long int j=1;j<=n;j++){ if( j%2 == 0){ //cout << j << endl; cont++; if(cont == k){ aux=j; } } } cout << aux << endl; cin.get(); }
|
|
|
En línea
|
|
|
|
dato000
Desconectado
Mensajes: 3.034
|
este es totalmente diferente al inicial.
|
|
|
En línea
|
|
|
|
letisen
Desconectado
Mensajes: 4
|
si lo cambie, usando ahora "long long int" en vez de "int" pero igual no me funciona.
|
|
|
En línea
|
|
|
|
dato000
Desconectado
Mensajes: 3.034
|
si lo cambie, usando ahora "long long int" en vez de "int" pero igual no me funciona.
En absoluto, no utilizas la función toPerfect en este nuevo main. Sigue usando main, y cuando quieras usar valores gigantezcos, almacena cada digito en un arreglo y lo conviertes con atoi, caracter por caracter.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Problema en este codigo
PHP
|
Bender-Deicide
|
1
|
1,636
|
30 Enero 2008, 04:09 am
por Carxl
|
|
|
problema al compilar este codigo
Programación C/C++
|
CrÄsH
|
3
|
2,811
|
16 Octubre 2010, 13:47 pm
por Oblivi0n
|
|
|
Problema:Windows detuvo este dispositivo porque informó de problemas.(Código 43)
Windows
|
indorama
|
8
|
23,662
|
31 Agosto 2011, 12:24 pm
por indorama
|
|
|
Problema con rand y srand en este codigo
Programación C/C++
|
pacosn1111
|
6
|
2,886
|
26 Abril 2015, 20:09 pm
por Miky Gonzalez
|
|
|
Problema al ejecutar este código
Programación C/C++
|
TheFlash
|
0
|
1,664
|
3 Enero 2017, 14:07 pm
por TheFlash
|
|