Hola Ignacio, cuando contestes asegurate de no cambiar el asunto.<br><br>Respecto de tus preguntas:<br><br>- Un array (al igual que otras variables) se declara global dejandolo fuera de cualquier funcion. El tamaño debe ser una constante. Si no se conoce a priori el tamaño que se necesitara, o se declara de un tamaño mayor a cualquiera posible o se usa memoria dinamica, usando 'new' en c++ o malloc o alloc en c.<br>
<br>-Un bucle 'for' es esencialmente un bucle while en el que se la inicializacion, la comprobacion de condicion y el control se integran a la sintaxis del bucle. En el do-while, la diferencia radica en qué se hace antes.<br>
<br>Un Do-While se podria reescribir con un While de la siguiente manera:<br>-----------------------------------------<br>inic<br>do<br>{<br><div style="margin-left: 40px;">codigo<br>ctrl<br></div>}while(cond)<br>-----------------------------------------<br>
inic<br>codigo<br>ctrl<br>while(cond)<br>{<br><div style="margin-left: 40px;">codigo<br>ctrl<br></div>}<br>-----------------------------------------<br><br>y con un For de la siguiente:<br><br>----------------------------------------<br>
inic<br>codigo<br>ctrl<br>for(;cond;ctrl)<br>{<br><div style="margin-left: 40px;">codigo<br></div>}<br>-----------------------------------------<br><br>Siempre (creo no equivocarme, corrijanme) que se puede usar uno, se puede usar el otro. Solo que a veces uno es mas intuitivo y/o facil de implementar que otro.<br>
<br>En la practica se usa el Do-While siempre que codigo debe ejecutarse al menos una vez.<br><br><br>Saludos<br><br><div class="gmail_quote">El 13 de agosto de 2009 18:07, josé Ignacio Retamal Thomsen <span dir="ltr"><<a href="mailto:pproma302@hotmail.com">pproma302@hotmail.com</a>></span> escribió:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>
Hola, visto que yo tambien estoy aprendiendo c++ resolvi el problema de Sandra(*). Y me nacieron 2 dudas: <br>- Como se puedo declarar un array con n carracteres como una variable de todo el programa; si no se puede como hago para llamar una variable de una funcion desde<br>
otra?<br>- Cuando son necesarios los bulces do-while(en gueneral)? ya que se ve como ejemplo en el problema que se puede usar un bucle do-while como un bucle for siendo mucho mas simple de implementar el for. Son realmente necesarios los bucles do-while?<br>
<br>Bueno ahi adjunto mi respuesta al problema usando bucles do-while y for, para utilisar el programa con los bulces for basta sacar de los comentarios los bucles for y borrar todos los "//".<br><br><br>* 2. El maestro del grupo 01 del primer semestre de la preparatoria Bosco desea obtener un reporte final de los alumnos de su grupo, que <br>
> obtuvieron un promedio por encima del promedio general del grupo con <br><pre>> el fin de tomar en cuenta el número de alumnos que estuvieron por <br>> encima del promedio general del grupo par formar los grupos para el <br>
> siguiente semestre. Desarrollar un programa en C++ que pida al <br>> usuario los n promedios de los alumnos y calcule el número de <br>> alumnos que estuvieron por encima del promedio general y el total de <br>
> reprobados. Mostrar en pantalla el promedio general del grupo, el <br>> total de alumnos que estuvieron por encima del promedio general y el <br>> total de alumnos reprobados.<br>########################################################################################################################################<br>
#include <iostream><br>using namespace std;<br><br>int N;<br>float suma;<br>int T = 0;<br>float promedio;<br><br><br><br>int LeerNotas();<br>int Media();<br><br><br><br>int main()<br>{<br> LeerNotas();<br> <br>
}<br><br>int LeerNotas()<br>{<br> cout<<"Introdusca la cantidad de alumnos"<<endl;<br> cin >> N;<br> float Notas[N];<br> int s = 0;<br> int b = 0;<br> /* <br> for(int i = 0; i < N; i++)<br>
{<br> cout<<"introdusca la nota del alumno "<<i+1<<":"<<endl;<br> cin >>Notas[i];<br> suma += Notas[i];<br> T++;<br> <br> }<br> */<br>
<br> // /*<br> do<br> {<br> cout<<"Introdusca la nota del alumno "<<T+1<<":"<<endl;<br> cin >>Notas[T];<br> suma += Notas[T];<br> T++;<br>
}<br> while(T < N);<br> // */ <br> promedio = suma/T;<br><br> /*<br> for(int i = 0; i < N; i++)<br> {<br> if(Notas[i] > promedio)<br> {<br> s++;<br> }<br> else b++;<br>
}<br> */<br> <br> // /*<br> int i = 0;<br> do<br> {<br> <br> if(Notas[i] > promedio)<br> {<br> s++;<br> i++;<br> }<br> else {<br> b++;<br>
i++;<br> }<br> }<br> while(i < N);<br> <br> // */<br> <br> cout<<"EL promedio de "<<N<<" alumnos es:"<<promedio<<endl;<br>
cout<<"EL numero de alumnos sobre la norma es:"<<s<<endl;<br> cout<<"EL numero en o bajo la norma es:"<<b<<endl;<br> system("PAUSE");<br>
<br>}<br><br>#####################################################################################################################################<br><div class="hm"><br><br> <br></div></pre><div class="hm"><br><hr>Guarda correos, fotos, archivos, documentos, todo. <a href="http://www.microsoft.com/latam/windows/windowslive/default.aspx" target="_blank">¡Ahora Hotmail te da espacio ILIMITADO!</a></div>
</div>
<br>_______________________________________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br></blockquote></div><br>