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>