Cómo agregar entrada de usuario a un array y mostrarle el final
mi código es un juego de matemáticas con número aleatorio que es una pequeña parte del código que muestra la pregunta y pide la respuesta del usuario cómo guardo cada pregunta y respuesta del usuario en un array
sss = Convert.ToString(answer);
question = string.Format("{0} {1} {2}", num01, op, num02);
Console.WriteLine("--------------------------------------------------------");
Console.WriteLine("What is = " + question+ " Or type QUIT to ignore ");
useranswer = Convert.ToString(Console.ReadLine());
Pregunta hecha hace 3 años, 4 meses, 27 días - Por syntaxsensei
3 Respuestas:
-
Puedes usar array bidimensional, pero debes saber cuántas preguntas/respuestas almacenarás con antelación:
string[,] array = new string[10, 2]; // 10 is how many columns (questions) you want to store, 2 defines that you want to store 2 values (question and answer) in each column // this is how you add items to your array array[0, 0] = question; // the first zero defines that you are adding the first item, the second one that it is question array[0, 1] = answer; //the second one defines that you add answers
Puedes acceder a tus preguntas y respuestas de la misma manera que las guardas:
array[0, 1]
devolverá la primera respuesta.Si usted no sabe cuántas preguntas usted ahorrará por adelantado, debe utilizar Lista o Diccionario en lugar de array.
Respondida el Dec 19, 2020 a las 07:53 - por cybermage
Votos positivos: 0 | Votos negativos: 0 -
Para guardar cada pregunta y respuesta del usuario en un array, puedes crear un objeto que represente una pregunta y su respuesta, y luego agregarlo a una lista de objetos. Aquí te muestro un ejemplo de cómo podrías hacerlo en tu código:
c
using System;
using System.Collections.Generic; class Program { static void Main() { ListlistaPreguntas = new List (); while (true) { Random rand = new Random(); int num01 = rand.Next(1, 11); int num02 = rand.Next(1, 11); string op = "+"; string question = string.Format("{0} {1} {2}", num01, op, num02); Console.WriteLine("--------------------------------------------------------"); Console.WriteLine("What is = " + question + " Or type QUIT to ignore "); string useranswer = Console.ReadLine(); if (useranswer.ToUpper() == "QUIT") break; PreguntaRespuesta preguntaRespuesta = new PreguntaRespuesta(question, useranswer); listaPreguntas.Add(preguntaRespuesta); } Console.WriteLine("Respuestas guardadas:"); foreach (var item in listaPreguntas) { Console.WriteLine(item.Pregunta + " = " + item.Respuesta); } } } class PreguntaRespuesta { public string Pregunta { get; set; } public string Respuesta { get; set; } public PreguntaRespuesta(string pregunta, string respuesta) { Pregunta = pregunta; Respuesta = respuesta; } } En este código, he creado una clase
PreguntaRespuesta
que representa una pregunta y su respuesta. Luego, dentro de un bucle while, genero preguntas aleatorias y almaceno la pregunta y respuesta del usuario en un objetoPreguntaRespuesta
, que luego agrego a la listalistaPreguntas
.Al final del programa, se recorre la lista de preguntas y respuestas para mostrarlas en la consola.
Espero que este ejemplo te ayude a guardar las preguntas y respuestas del usuario en un array. ¡Déjame saber si necesitas más ayuda!
Respondida el Dec 20, 2020 a las 07:52 - por Gpt
Votos positivos: 0 | Votos negativos: 0 -
Para almacenar las preguntas y respuestas del usuario en un array, puedes utilizar dos arrays separados, uno para las preguntas y otro para las respuestas. Aquí tienes cómo puedes hacerlo:
// Crea dos arrays para almacenar las preguntas y respuestas string[] questions = new string[10]; // Aumenta el tamaño del array según sea necesario string[] answers = new string[10]; // Aumenta el tamaño del array según sea necesario // Variable para seguir el número de preguntas/respuestas almacenadas int questionCount = 0; // Obtén la entrada del usuario Console.WriteLine("--------------------------------------------------------"); Console.WriteLine("What is = " + question + " Or type QUIT to ignore "); useranswer = Convert.ToString(Console.ReadLine()); // Si el usuario no ha escrito "QUIT", almacena la pregunta y la respuesta if (useranswer != "QUIT") { questions[questionCount] = question; answers[questionCount] = useranswer; questionCount++; }
Una vez que hayas almacenado todas las preguntas y respuestas, puedes mostrarlas utilizando un bucle
for
:// Muestra las preguntas y respuestas almacenadas Console.WriteLine("--------------------------------------------------------"); Console.WriteLine("Questions and Answers:"); for (int i = 0; i < questionCount; i++) { Console.WriteLine("Question: " + questions[i]); Console.WriteLine("Answer: " + answers[i]); }
Ajusta el tamaño de los arrays
questions
yanswers
según el número de preguntas y respuestas que esperas almacenar.Respondida el Dec 20, 2020 a las 07:59 - por Gemini
Votos positivos: 0 | Votos negativos: 0