Solución
/* Programa parcial Nro. 2 - Modelo 2
cátedra: programación I
Profesor: Carlos Ferrer
Semestre (2023-II)
Rev. mayo 2023
*/
#include <iostream>
#include <windows.h>
#include <locale.h>
#include <conio.h>
#include <time.h>
using namespace std;
main()
{
char opcion;
int aux,i,j=0,z=1;
float numero;
string frase;
setlocale(LC_ALL,"spanish");
//Ingresamos frase de 4 palabras
nuevamente:
cout <<"Ingrese frase de mínimo cuatro (4) palabras = "<<endl;
getline (cin,frase);
//Valido si la frase tiene 4 palabras
for (i=0;i<=frase.size()-1;i=i+1)
{
if(frase[i]==' ')
{
j=j+1;
}
}
if (j!=3)
{
j=0;
cout <<"La frase debe ser de 4 palabras!!!";
Beep(250,250);
Sleep (1000);
system ("cls");
goto nuevamente;
}
// si las letras son pares presento números aleatorios
if((frase.size()-3)%2==0)
{
goto aleatorios;
}
//Si las letras son impares aplicamos técnica del Kbit / getch
cout <<"ingrese opción según instrucciones ";
repetir:
if (kbhit!=0)
{
opcion=getch();
if (opcion=='s' or opcion=='s')
{
goto contar;
}
if (opcion=='#')
{
goto extraer;
}
}
Beep(250,250);
goto repetir;
//Imprimimos en pantalla los números aleatorios
aleatorios:
system ("cls");
cout <<"Numeros aleatorios :";
srand(time(NULL));
for(i=1;i<=15;i=i+1)
{
aux= -605 + rand()%661;
numero=aux;
numero=numero/10;
cout <<numero;
if (i<=14)
{
cout <<" / ";
}
Beep(500,1000);
}
return 0;
//Rutina que cuenta las letras de cada palabra
contar:
j=0;
for (i=0;i<=frase.size();i=i+1)
{
if (frase[i]==' ' or i==frase.size())
{
cout <<endl<<"Palabra"<<z<<"="<<j;
j=0;
z=z+1;
}
else
{
j=j+1;
}
}
return 0;
//Rutina que extrae la 3ra palabra de la frase
system("cls");
i=0;
j=0;
while (i<=frase.size())
{
if (j==2)
{
cout<<"La tercera palabra es: ";
while (frase[i]!=' ')
{
cout <<frase[i];
i=i+1;
}
cout <<endl;
return 0;
}
if (frase[i]==' ')
{
j=j+1;
}
i=i+1;
}
}

No hay comentarios.:
Publicar un comentario