Informática, pregunta formulada por chuncer1234, hace 1 mes

Se dispone de una lista de N nombres de alumnos. Escribir un algoritmo que solicite el nombre de un alumno y busque en la lista (array) si el nombre está en la lista. C++
C++

Respuestas a la pregunta

Contestado por megatokay
0

A continuación código en C++ que muestra dice si un nombre es encontrado en una lista (arreglo). Se adjunta imagen de la salida del algoritmo.

Programa en C++ para la búsqueda de datos en un arreglo

#include<iostream>

#include<cctype>

using namespace std;

int main() {

  • // Definir e inicializar variables

string minusculas(string s);

string continuar;

int encontrado;

int k;

string nombre;

int respuesta;

int x;

k = 0;

encontrado = 0;

  • // definir arreglo

// fila: tope cantidad máxima de estudiantes

// columna: nombre de los estudiantes

string alumnos[1500][1];

  • // Seleccionar acción en en menú

do {

 cout << "Ingrese Opción (1-3)" << endl;

 cout << "*************************" << endl;

 cout << "1.- Ingrese datos de estudiantes" << endl;

 cout << "2.- Buscar nombre " << endl;

 cout << "3.- Salir" << endl;

 do {

  cin >> respuesta;

 } while (!(respuesta!=1 || respuesta!=2 || respuesta!=3));

 switch (respuesta) {

 case 1:

  •   // Ingresar registro de alumnos

  cout << "**** Registro de alumnos ****" << endl;

  cout << "*************************" << endl;

  do {

   k = k+1;

   cout << "Nombre del estudiante " << k << " : ";

   cin >> alumnos[k-1][0];

   alumnos[k-1][0] = minusculas(alumnos[k-1][0]);

   do {

    cout << "Continuar con otro registro?: (s/n)" << endl;

    cin >> continuar;

    continuar = minusculas(continuar);

   } while (!((continuar=="s" || continuar=="n")));

  } while (continuar!="n");

  break;

 case 2:

  •   // buscar nombre

  encontrado = 0;

  cout << "Ingrese nombre a buscar: ";

  cin >> nombre;

  nombre = minusculas(nombre);

  for (x=1;x<=k;x++) {

   if (nombre==alumnos[x-1][0]) {

    encontrado = encontrado+1;

   }

  }

  •   // Mostrar resultados

  if (encontrado!=0) {

   cout << nombre << " fue encontrado en la lista " << encontrado << " veces" << endl;

  } else {

   cout << nombre << " no se encontró en la lista " << endl;

  }

  break;

 }

} while (respuesta!=3);

return 0;

}

string minusculas(string s) {

for(unsigned int i=0;i<s.size();i++)

 s[i] = tolower(s[i]);

return s;

}

Para saber más acerca de algoritmo pseint para manejo de arrays consulte: https://brainly.lat/tarea/13739325

#SPJ1

Adjuntos:
Contestado por macoysheyla12
0

Respuesta:

int main()

{

   char nombres[6][10] = {"maria","teresa","mariana","jose","pedro","juan"};

   char alum[10];

   int cont=0;

   printf("Ingrese el nombre del alumno: \n");

   scanf("%s", alum);

   int i;

   for(i=0; i<6; i++){

           if (strcmp(nombres[i],alum)==0){

               printf("El alumno %s esta registrado\n", nombres[i]);

               }else{

                   cont++;

               }

           }

                   if (cont==6){

                       printf("%s no esta registrado",alum);

                   }

   getch();

   return 0;

}

Explicación:

Espero haberte ayudado

Otras preguntas