| Ver tema anterior :: Ver siguiente tema | | Autor | Mensaje |
|---|
Franck
Registrado: 07 Dic 2012 Mensajes: 2
| Publicado: 07/12/2012 9:14 pm | | | Título: Cambiar un codigo C# a C++ |
| hola que tal soy nuevo por aqui. necesito convertir de C# a C++ es el codigo de mi proyecto final lo que paso esque tenia la estructura base en c++ hasta que le pedi a alguien de 5to semestre ayuda para algunos detalles que tenia el proyecto.
aqui esta en C#
namespace COSTOS_PRODUCCION_PROYECTO { class Program { static void Main(string[] args) { double costop = 0; double mayor_dulces = 0; int mes_mayor_dulces = 0; double acum_bebidas = 0; double mayor_bebidas = 0; int mes_may_bebidas = 0; double menor_bebidas = 0; int mes_men_bebidas = 0; double menor_diciembre = 0; int rub_menor_diciembre = 0; string rubro_menor = ""; double[,] matriz = new double[3, 12]; Console.WriteLine("PROGRAMA QUE PROPORCIONA INFORMACION SOBRE EL TRIMESTRE QUE TIENE MAYOR COSTO DE PRODUCCION EN DULCES & CONSERVAS" + "\n\r" + "PROMEDIO ANUAL DE LOS COSTOS DE PRODUCCION DE BEBIDAS " + "\r\n" + "MES DE COSTO MAYOR Y MENOR EN PRODUCCION DE BEBIDAS " + "\r\n" + "RUBRO QUE TUVO MENOR COSTO EN DICIEMBRE"); Console.ReadLine(); string rubro = "Dulces"; for (int i = 0; i < 3; i++) { if (i == 0) { rubro = "Dulces"; } if (i == 1) { rubro = "Conservas"; } if (i == 2) { rubro = "Bebidas"; } for (int j = 0; j < 12; j++) { Console.WriteLine("Proporciona el costo del mes #" + (j + 1) + " de produccion de " + rubro + ":"); costop = Convert.ToDouble(Console.ReadLine()); matriz[i, j] = costop; } } mayor_dulces = matriz[0, 0]; mes_mayor_dulces = 1; mayor_bebidas = matriz[2, 0]; mes_may_bebidas = 1; menor_bebidas = matriz[2, 0]; mes_men_bebidas = 1; menor_diciembre = matriz[0,11]; //Dulces for (int k = 1; k < 12; k++) { if (matriz[0, k] > mayor_dulces) { mayor_dulces = matriz[0, k]; mes_mayor_dulces = (k + 1); } } //Bebidas for (int l = 1; l < 12; l++) { acum_bebidas += matriz[2, l]; if (matriz[2, l] > mayor_bebidas) { mayor_bebidas = matriz[2, l]; mes_may_bebidas = (l + 1); } if (matriz[2, l] < menor_bebidas) { menor_bebidas = matriz[2, l]; mes_men_bebidas = (l + 1); } } //Menor costo tomando en cuenta conservas for (int m = 1; m <3; m++) { if (matriz[m, 3] < menor_diciembre) { menor_diciembre = matriz[m, 3]; rub_menor_diciembre = (m + 1); } } if (rub_menor_diciembre == 0) { rubro_menor = "Dulces"; } if (rub_menor_diciembre == 1) { rubro_menor = "Conservas"; } if(rub_menor_diciembre==2) { rubro_menor = "Bebidas"; } Console.WriteLine("Mes que registró el mayor costo de producción de dulces es: " + mes_mayor_dulces); Console.WriteLine("Promedio anual de los costos de producción de bebidas es: " + acum_bebidas / 12); Console.WriteLine("En qué mes se registró el mayor costo de producción en bebidas es:" + mes_may_bebidas + " con: " + mayor_bebidas); Console.WriteLine("En qué mes se registró el menor costo de producción en bebidas es:" + mes_men_bebidas + " con: " + menor_bebidas); Console.WriteLine("Cuál fue el rubro que tuvo el menor costo de producción en diciembre es: " + rubro_menor + " con: " + menor_diciembre); Console.ReadKey();
l[size=24]lo necesito en C++ aqui esta lo que mas o menos que he modificado modifique[/size]
#include "stdafx.h" #include <conio.h> #include <string.h> int _tmain(int argc, _TCHAR* argv[]) { float mayor_dulces = 0; int mes_mayor_dulces = 0; float acum_bebidas = 0; float mayor_bebidas = 0; int mes_may_bebidas = 0; float menor_bebidas = 0; int mes_men_bebidas = 0; float menor_diciembre = 0; int rub_menor_diciembre = 0; char rubro_menor = ":"; float costop=0; float matriz [3][12];
printf("PROGRAMA QUE PROPORCIONA INFORMACION SOBRE EL TRIMESTRE QUE TIENE MAYOR COSTO DE PRODUCCION EN DULCES & CONSERVAS:\n""""PROMEDIO ANUAL DE LOS COSTOS DE PRODUCCION DE BEBIDAS: \n""""MES DE COSTO MAYOR Y MENOR EN PRODUCCION DE BEBIDAS:\n """"RUBRO QUE TUVO MENOR COSTO EN DICIEMBRE"); getch(); char rubro = "Dulces"; for (int i = 0; i < 3; i++) { if (i == 0) { rubro = "Dulces"; } if (i == 1) { rubro = "Conservas"; } if (i == 2) { rubro = "Bebidas"; } for (int j = 0; j < 12; j++) { printf("Proporciona el costo del mes #", (j + 1), "de producción de ", rubro, ":"); scanf_s("%f",&costop); matriz[i][j] = costop; } } mayor_dulces = matriz [0, 0]; mes_mayor_dulces = 1; mayor_bebidas = matriz [2, 0]; mes_may_bebidas = 1; menor_bebidas = matriz [2, 0]; mes_men_bebidas = 1; menor_diciembre = matriz [0,11]; //Dulces for(int k = 1; k < 12; k++) { if(matriz [0, k]>mayor_dulces) { mayor_dulces = matriz[0, k]; mes_mayor_dulces = (k + 1); } } //Bebidas for(int l = 1; l < 12; l++) { acum_bebidas+= matriz [2, l]; if(matriz[2, l]> mayor_bebidas) { mayor_bebidas = matriz [2, l]; mes_may_bebidas = (l + 1); } if (matriz[2, l]<menor_bebidas) { menor_bebidas = matriz [2, l]; mes_men_bebidas = (l + 1); } } //Menor costo tomando en cuenta conservas for (int m = 1; m <3; m++) { if (matriz [m, 3]<menor_diciembre) { menor_diciembre=matriz [m, 3]; rub_menor_diciembre = (m + 1); } } if (rub_menor_diciembre == 0) { rubro_menor = "Dulces"; } if (rub_menor_diciembre == 1) { rubro_menor = "Conservas"; } if(rub_menor_diciembre==2) { rubro_menor = "Bebidas"; } printf ("Mes que registró el mayor costo de producción de dulces es: %d ", mes_mayor_dulces); printf ("Promedio anual de los costos de producción de bebidas es:%f ", acum_bebidas / 12); printf ("En qué mes se registró el mayor costo de producción en bebidas es: %d,%f", mes_may_bebidas, mayor_bebidas); printf ("En qué mes se registró el menor costo de producción en bebidas es: %d,%f", mes_men_bebidas, menor_bebidas); printf ("Cuál fue el rubro que tuvo el menor costo de producción en diciembre es:%d,%c", rubro_menor, menor_diciembre); getch(); return 0; }
porfavor yudenme _________________ Programador begginer |
| | Volver arriba | |  | Masakre
Registrado: 06 Jun 2012 Mensajes: 245
| Publicado: 09/12/2012 12:07 pm | | | Título: |
| No hay mucha diferencia, creo que podrías empezar cambiando la forma de mostrar mensajes por la pantalla:
| Código: | Console.WriteLine("blablabla"+estaEsUnaVariable); |
por
| Código: | cout<<"blablabla"<<estaEsUnaVariable; |
También la forma de escribir los índices de las matrices:
por
Olvida el printf y scanf, eso es más concerniente a C. En C++ se usa cout y cin  |
| | Volver arriba | |  | Franck
Registrado: 07 Dic 2012 Mensajes: 2
| Publicado: 09/12/2012 3:24 pm | | | Título: mas especifico |
| (todas esta variables o funciones estan c# y las necesito en c++)
string rubro_menor = ""; double[,] matriz = new double[3, 12] string rubro = "Dulces"; Console.WriteLine("Proporciona el costo del mes #" + (j + 1) + " de produccion de " + rubro + ":"); costop = Convert.ToDouble(Console.ReadLine()); matriz[i, j] = costop;
ya cambie lo iostream para cin y cout  pero estas variables o funciones hacen que me falle todo no c como se escriben o se ponen en c++
gracias por contestar masakre _________________ Programador begginer |
| | Volver arriba | |  | | Masakre
Registrado: 06 Jun 2012 Mensajes: 245
| Publicado: 10/12/2012 12:46 pm | | | Título: Re: mas especifico |
| No estoy muy seguro pero podrías probar esto ...
| Código: | String rubro_menor = ""; double *matriz = new double [3][12] String rubro = "Dulces"; cout<<"Proporciona el costo del mes nro "<<j + 1<<" de produccion de "<<rubro<<":"; |
Y sobre las dos últimas líneas, ¿qué es lo que hace exactamente?
| Código: | costop = (double)(cin.get()); matriz[i][j] = costop; |
Para la conversión de tipos, creo que sólo debes agregar el nombre del nuevo tipo entre paréntesis, delante de la variable que será cambiada de tipo. Pero en este caso, no estoy muy seguro de qué es lo que haga ReadLine(), ¿leerá un número?
Disculpa si tengo errores . . . |
| | Volver arriba | |  | | |
| No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas
|
|
| |