

Santiago Alferez
EstudianteRespuestas del foro creadas
-
Santiago Alferez
Miembro2 septiembre, 2020 en 6:15 pm en respuesta a: Proyecto 3. Programa para calcular notas de alumnos.puedes crear un arreglo que guarde posiciones o las notas de los alumnos que tienen las notas promedio.
recorrer el arreglo original y podrias hacer esto:int arrProm[ N ] –> asume N como el numero de alumnos pues en el peor caso todos pueden tener la nota promedio.
luego recorrer el arreglo original y creas una variable j adicional, algo como esto:En este ejemplo guardo las notas directamente, hazlo guardando posiciones tu
for(int i=0, j=0; i<n; i++){<=”” p=””></n;>
if( la nota en la pos i es una nota promedio ) {
arrProm[j] = arrProm[i];
j++; <– j aumentaria ya que almaceno la nota de un estudiante en la primera pos
}
}
asi mismo puedes hacerlo con estudiantes que tengan las notas mas altas o mas bajas ya que podrian ser 2 o mas.
Saludos
-
1. Estas creando arreglos de caracteres los cuales estan vacios(char nombre[ ] = ” “)dentro de los corchetes debera ir algun tamaño, recuerda que estos son estaticos(o sea el tamaño que le asignas no crecera ni disminuira), entonces esos arreglos estan sin tamaño(¿podran almacenar algo?).
2. Al momento de realizar la lectura estas leyendo muy bien, pero, ¿en donde estas guardando lo que estas leyendo? debes almacenar lo leido en algun lugar.
3. Al momento de imprimir claramente imprimiras solo un caracter ya que nombre en la posicion i es un char.
Ejemplo: char nombre[] = {‘h’, ‘o’, ‘l’, ‘a’}; ahora suponiendo que i=0, entonces nombre[ i ] = h.
La verdad no entiendo porque imprime alguna letra que se la ha enviado mediante teclado porque no la almacenas, podria ser por las lineas de strcpy.Trata de reorganizar tus ideas y pensar mejor en como almacenar. 😉
Como tip, estas en C++ no en C. en C++ existe un tipo de dato especial para trabajar con cadenas, se llama string, comprendo que en el curso se use el arreglo de char, pero C++ te hace la vida mas facil con el string. Puedes investigar sobre esto, pero primero debes mejorar la logica de lo que quieres lograr hacer con este problema usando los arreglos de char, posteriormente puedes resolverlo con string, asi te cuestionaras sobre cual es mejor utilizar.
Ejemplo para trabajar con string:
string nombre;cin>>nombre;
-
Ya te ayudo, mirare el codigo
-
Hola, te deje algunos comentarios en este link: https://ideone.com/c1PAbM
Practicamente debes asignarle el tamaño a tu arreglo una vez que ya tienes valor leido por consola, porque los arreglos son estaticos y no podras cambiar su tamaño posteriormente
-
Algunos links no redireccionan a nada, intenta quitar los que dice <div> de los links
-
Santiago Alferez
Miembro21 abril, 2020 en 6:26 pm en respuesta a: Duda con respecto al Ejemplo 3.- Arreglo con variable constante y cálculos.Vale, lo que intentas hacer al momento de realizar int tab[n] = {}, es para que el array internamente guarde 0 en todas sus posiciones no?
Si no lo haces para eso entonces no se para que es esa linea de codigo.
Por otra parte la condicion del primer for siempre sera true porque 1 siempre sera menor o igual que 9, entonces iterara infinitamente. -
Santiago Alferez
Miembro21 abril, 2020 en 6:16 pm en respuesta a: Duda con respecto al Ejemplo 3.- Arreglo con variable constante y cálculos.Pega el codigo en el compilador online para que podamos verlo
-
Algo adicional, hay una libreria que importa todo: #include<bits/stdc++.h>
Esto no hara mas lento el programa pues no afecta para nada el tiempo en ejecucion.Y si en determinado momento necesitan tener el valor de PI puede hacerlo como se explica en el post de angel, con la funcion acos y como parametro le pasaremos -1.
Ejemplo: double x = acos(-1);Espero les sirva, saludos
-
Hola, tambien manejo linux, el entorno puede ser visual studio code ó codeblocks.
-
Santiago Alferez
Miembro27 abril, 2020 en 6:33 pm en respuesta a: ¡AYUDA!, Tengo un error el cual me dice que la variable 'numero' es corrupta.Ahi ya te respondieron. Otra cosa, el titulo del codigo dice ordenar de mayor a menor, lo que estas haciendo es ordenar de menor a mayor y al final imprimes el arreglo de atras hacia adelante, osea no lo ordenaste de mayor a menor, solo cambia la condicion del if e imprime desde el inicio
-
Santiago Alferez
Miembro27 abril, 2020 en 4:07 pm en respuesta a: ¡AYUDA!, Tengo un error el cual me dice que la variable 'numero' es corrupta.Eso te iba a comentar, hay un cero, y ese numero no lo asignaste al arreglo.
En el segundo for(el anidado) coloca la condicion como j<(9-i) sin el = solo el <, y me comentas que ocurre -
Santiago Alferez
Miembro27 abril, 2020 en 3:49 pm en respuesta a: ¡AYUDA!, Tengo un error el cual me dice que la variable 'numero' es corrupta.Pega el codigo en un compilador online, asi podemos ayudarte mejor
-
Santiago Alferez
Miembro21 abril, 2020 en 6:47 pm en respuesta a: Duda con respecto al Ejemplo 3.- Arreglo con variable constante y cálculos.<div>Mmmm ya no se que pueda estar pasando, hay otra manera de inicializar todo el array en 0, pero eso se sale del tema en el que vas.
</div><div>Igualmente si no guardas 0 en todas sus posiciones al principio no pasara nada, espera la respuesta de @angel-sanchez el puede saber a que se debe el error.
</div>
-
Santiago Alferez
Miembro21 abril, 2020 en 6:33 pm en respuesta a: Duda con respecto al Ejemplo 3.- Arreglo con variable constante y cálculos.Vale, prueba hacerlo asi int tab[n] {};(sin el igual)
-
Trabaja con tipos de dato float o double, creo que eso es lo que necesitas