Dev - C++ - Ayuda programa c++

 
Vista:

Ayuda programa c++

Publicado por benjy (2 intervenciones) el 27/10/2015 19:00:09
Buenas tardes


Me podrían colaborar aclarándome que esta mal en este programa:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void imprimirNotas(float notas[])
{ //Función para imprimir el arreglo de notas
 int i;
 system("clean");
 cout<<" NOTAS "<<endl;
 for(i=0;i<30;i++)
{ cout<<endl<<"Nota "<<i+1<<" : "<<notas[i];
 }
 cout<<endl<<endl;
 system("pause");
}
Int main() //Función principal
{ float
notas[30]={1.0,5.0,2.6,4.2,3.5,2.8,4.5,2.3,5.0,3.3,1.9,3.0,2.3,4.1,4.7,5.0,3.5,3.9,3.1,2.2,4.7,5.0,3.6,4.4,1.
9,2.4,3.0,1.0,5.0,4.0};
imprimirNotas(notas);
return 0;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 45
Ha disminuido su posición en 6 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda programa c++

Publicado por xve (68 intervenciones) el 27/10/2015 19:54:55
Hola Benjy, que error te da? o que problema tendría que hacer el código que no hace?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 661
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda programa c++

Publicado por agustin (522 intervenciones) el 27/10/2015 20:02:46
Acostumbrate a usar definiciones ya que imagina que cambias la dimension del array, tendrias que ir cambiando el 30 por los demas sitios mientras que en mi codigo solo lo cambias en la definicion de N_ELEMENTOS.
Otra cosa, acostumbrate a usar etiquetado para poner el codigo y identalo correctamente porque es un cacao.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <iostream>
#include <stdlib.h>
#define N_ELEMENTOS 30
 
#if defined(WIN32) || defined(_WIN32) || defined(DJGPP) || defined(DOS) || defined(WIN)
    #define  CLS()  system("cls")
#elif defined(LINUX) || defined(_LINUX_) || defined(__LINUX__) || defined(UNIX)
    #define  CLS()  system("clear")
#else
   #define   CLS()  puts("Este PC se autodestruira en 30 segundos!!!")
#endif
 
using namespace std;
 
void imprimirNotas(float notas[],int nElementos)
{ //Función para imprimir el arreglo de notas
   int i;
   CLS();
   cout<<" NOTAS "<<endl;
   for(i=0;i<nElementos;i++)
   {
      cout<<endl<<"Nota "<<i+1<<" : "<<notas[i];
   }
   cout<<endl<<endl;
   system("pause");
}
 
int main() //Función principal
{
   float notas[N_ELEMENTOS]={1.0,5.0,2.6,4.2,3.5,2.8,4.5,2.3,5.0,3.3,1.9,3.0,2.3,4.1,4.7,5.0,3.5,3.9,3.1,2.2,4.7,5.0,3.6,4.4,1.9,2.4,3.0,1.0,5.0,4.0};
   imprimirNotas(notas,N_ELEMENTOS);
   return 0;
}

PD: clean no se si será en Mac pero en win y linux no.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda programa c++

Publicado por benjy (2 intervenciones) el 27/10/2015 21:14:54
Perfecto, muchas gracias ,me podrían colaborar en esto:Función para ordenar las notas mayor a menor.

tengo este código pero como integro los dos?

1
2
3
4
5
6
7
8
9
10
11
12
void ordenar_numeros(int arreglo[], int lon){
        int Temp;
         for(int i=0;i<lon;i++)
                for(int j=0;j<lon-1;j++)
                    if(arreglo[j]<arreglo[j+1]){
                        Temp=arreglo[j];
                        arreglo[j]=arreglo[j+1];
                        arreglo[j+1]=Temp;}
 
                 for(int i=0;i<lon;i++)
                    cout<<arreglo[i]<<endl;
                        }

LUEGO PARA EJECUTARLA
1
ordenar_numeros(arr,lon);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

compañero tu pudiste resolver el problema

Publicado por david (1 intervención) el 29/10/2015 21:28:15
compañero tu pudiste resolver el problema
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 661
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

compañero tu pudiste resolver el problema

Publicado por agustin (522 intervenciones) el 01/11/2015 11:54:25
¿Te refieres a algo asi?:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <iostream>
#include <iomanip>
#include <stdlib.h>
 
#define N_ELEMENTOS 30
 
#if defined(WIN32) || defined(_WIN32) || defined(DJGPP) || defined(DOS) || defined(WIN)
    #define  CLS()  system("cls")
#elif defined(LINUX) || defined(_LINUX_) || defined(__LINUX__) || defined(UNIX)
    #define  CLS()  system("clear")
#else
   #define   CLS()  puts("Este PC se autodestruira en 30 segundos!!!")
#endif
 
enum Orden{ascendente,descendente};
using namespace std;
 
void ordenarNotas(float arreglo[], int nElementos, int orden)
{
   float Temp;
 
   for(int i=0;i<nElementos;i++){
      for(int j=0;j<nElementos-1;j++){
         if(orden == ascendente){
            if(arreglo[j]>arreglo[j+1]){
               Temp=arreglo[j];
               arreglo[j]=arreglo[j+1];
               arreglo[j+1]=Temp;
            }
         }else{
            if(arreglo[j]<arreglo[j+1]){
               Temp=arreglo[j];
               arreglo[j]=arreglo[j+1];
               arreglo[j+1]=Temp;
            }
         }
      }
   }
}
 
void imprimirNotas(float notas[],int nElementos)
{ //Función para imprimir el arreglo de notas
   int i;
 
   CLS();
   cout<<" NOTAS "<<endl;
   for(i=0;i<nElementos;i++)
   {
      cout << endl << "Nota " << setw(2) << right << i+1 << " : " << setprecision(2) << fixed << notas[i];
   }
 
   cout<<endl<<endl;
   system("pause");
}
 
int main() //Función principal
{
   float notas[N_ELEMENTOS]={1.0,5.0,2.6,4.2,3.5,2.8,4.5,2.3,5.0,3.3,1.9,3.0,2.3,4.1,4.7,5.0,3.5,3.9,3.1,2.2,4.7,5.0,3.6,4.4,1.9,2.4,3.0,1.0,5.0,4.0};
   ordenarNotas(notas,N_ELEMENTOS,descendente); //Orden ascendente o descendente
   imprimirNotas(notas,N_ELEMENTOS);
   return 0;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar