• Viernes 29 de Marzo de 2024, 14:04

Autor Tema:  pasar de c++ a java  (Leído 8888 veces)

marthamoreno

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
pasar de c++ a java
« en: Miércoles 17 de Noviembre de 2010, 01:10 »
0
hola
alguien me podria ayudar en pasar este codigo de c++ a Java porfavor, Gracias
Tema: investigacion de oepraciones
metodo simplex

/* METODO SIMPLEX
*/

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

//Lo maximo que pueden alcanzar las variables y restricciones
#define MAX 10
#define RESTRICCION 3
double funcion[MAX], restricciones[MAX+1][MAX+RESTRICCION];
double independiente[RESTRICCION];
int leeDatos(int *var) {
int rest,c,i;

printf(" Funcion a Optimizar nNumero de Variables: ");
scanf("%d",var);

printf("nRecuerda: c1.X1+c2.X2+...cn.Xn = b nn");

for(c=0;c<*var;c++)
{
printf(" c%d: ", c+1);
scanf("%lf",&funcion[c]);
fflush(stdin);
}

printf("nNumero de Restricciones: ");
scanf("%d",&rest);

fflush(stdin);

for(i=0;i<rest;i++)
{
printf("Restriccion %dn",i+1);
for(c=0;c<*var;c++)
{
printf(" c%d: ",c+1);
scanf("%lf",&restricciones[c]);
fflush(stdin);
}
printf("Termino independiente ");
scanf("%lf", &independiente);
fflush(stdin);
}

return rest;
}

int main(void)
{
int rest, var, ni ;
int i,j, k, columna, renglon, count, cuenta;
double maximo = 0, menor, aux, mult, temp;
rest = leeDatos(&var);

//Crear tabla inicial simplex
for(i=0;i<rest;i++)
for(j=0; j<rest; j++)
if (i == j)
restricciones[var+j]=1;
else
restricciones[var+j]=0;
for(i=0; i<rest;i++)
restricciones[var+rest] = independiente;

for(j=0; j<var; j++)
restricciones[rest][j] = funcion[j] * -1;
for(j=var; j<rest+var; j++)
restricciones[rest][j] = 0;

ni=1;
printf("n-----------------------------------------------");
printf("n ITERACION %d",ni);
printf("n-----------------------------------------------n");
ni++;
for(i=0; i<=rest; i++) {
for(j=0; j<=rest+var; j++)
printf(" %.2lf t", restricciones[j]);
printf("n");
}

//Encontrar la variable de decision que entra a la base
//y la de holgura que saldra de la base

do
{
//Encontrar la variable de decision que entrara a la base
maximo = abs(restricciones[rest][0]);
columna = 0;
for(j=0; j<=rest+var; j++)
{
if( restricciones[rest][j] < 0 )
{
temp = -1 * restricciones[rest][j];
if ( maximo < temp)
{
maximo = temp;
columna = j;
}
}
else
continue;
}

count = 0;
aux = 1e20;
menor = 1e20;
for(i=0; i<rest; i++) {

if(restricciones[columna] > 0)
aux = restricciones[rest+var] / restricciones[columna];
else
count++;
if( menor > aux ) {
menor = aux;
renglon = i;
}
}
if(count == rest) {
printf("Soluci� no acotada");
exit(1);
}
printf("nPivote: %.2lf, renglon %d columna %d",restricciones[renglon][columna], renglon, columna);

//Encontrar los coeficientes de la nueva tabla
aux = restricciones[renglon][columna];
for(j=0; j<=(rest+var); j++)
restricciones[renglon][j] = restricciones[renglon][j] / aux;


for(i=0; i<=rest; i++) {
if (i == renglon )
continue;
else {
aux = restricciones[columna] * -1;
for(k=0; k <= rest+var; k++) {
restricciones[k] = (aux * restricciones[renglon][k]) +
restricciones[k];
}
}

}
printf("n-----------------------------------------------");
printf("n ITERACION %d",ni);
printf("n-----------------------------------------------n");
ni++;
for(i=0; i<=rest; i++) {
for(j=0; j<=rest+var; j++)
printf(" %.2lf t", restricciones[j]);
printf("n");
}
cuenta = 0;
for(j=0;j<rest+var;j++)
if(restricciones[rest][j] >= 0)
cuenta++;
if (cuenta == rest+var)
break;
} while(cuenta);

printf("---->");

getch();//
}

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: pasar de c++ a java
« Respuesta #1 en: Miércoles 17 de Noviembre de 2010, 08:57 »
0
  • Eso está en C a secas, no en C++ (no veo ni una sola línea espcífica de C++ ahí)
  • Utiliza las etiquetas de código, que para algo están
  • No se hace la tarea. Si tienes alguna duda concreta, te la resolvemos encantados, pero no creo que nadie se ponga a hacer algo que tú tienes que hacer

Saludos y suerte.

firefox24680

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Re: pasar de c++ a java
« Respuesta #2 en: Domingo 8 de Octubre de 2017, 00:48 »
0
  • Eso está en C a secas, no en C++ (no veo ni una sola línea espcífica de C++ ahí)
  • Utiliza las etiquetas de código, que para algo están
  • No se hace la tarea. Si tienes alguna duda concreta, te la resolvemos encantados, pero no creo que nadie se ponga a hacer algo que tú tienes que hacer

Saludos y suerte.

Aunque ha pasado bastante tiempo igual me parece bastante desagradable este tipo de respuestas, la amiga Martha esta solicitanto ayuda para hacer la conversion de un codigo de un lenguaje a otro...

Primero: si se equivoco en el lenguaje, que no es C++ sino C, es porque obviamente no conoce las diferencias entre ambos, e imagino que el m0squit0 si la conoce, no veo la necesidad de hacer ese comentario...
Segundo: si no uso las etiquetas de codigo, pues o no las conoce o las habra olvidado, HAY MEJORES MANERAS DE HACER ESTE TIPO DE SUGERENCIAS, y no con la prepotencia que se nota en el comentario de m0squit0...
Tercero: en el mensaje no veo que ella este pidiendo que se le haga la tarea, ella esta pidiendo ayuda para convertirlo, eso quiere decir alguien que la guie...

Espero que estas no sean las respuestas que los posteadores reciban en este foro, sino lo mejor seria que lo cerraran porque la idea es ayudar, no amedrentar a alguien porque no sabe...

Saludos

Haggen

  • Miembro activo
  • **
  • Mensajes: 88
  • Nacionalidad: mx
    • Ver Perfil
    • Mis proyectos
Re:pasar de c++ a java
« Respuesta #3 en: Jueves 19 de Octubre de 2017, 00:04 »
0
pues tampoco dice "no le entiendo a tal línea para convertirla", sinó que más bien lanza todo el código a ver quien lo hace por ella, y pues eso para mi es hacer el trabajo de alguien más.