👤

(C#) Se dă pe o linie o frază compusă din mai multe cuvinte despărțite între ele printr-unul sau mai multe spații. Pe următoarea linie se dă un număr X.
Să se scrie o aplicație consolă ce tipărește al X-lea cuvânt din frază, dacă fraza are cel puțin X cuvinte. Dacă fraza nu are X cuvinte, atunci tipărește N/A.

Exemplu:

Pentru datele de intrare:

o fraza de test
3
La consolă se va afișa:

de


Răspuns :

Răspuns:

using System;

class Program

{

   static void Main()

   {

       // Citim fraza de la utilizator

       Console.WriteLine("Introduceți o frază:");

       string input = Console.ReadLine();

       // Citim numărul X de la utilizator

       Console.WriteLine("Introduceți numărul X:");

       int X = int.Parse(Console.ReadLine());

       // Separăm cuvintele folosind metoda Split și eliminăm spațiile suplimentare cu StringSplitOptions.RemoveEmptyEntries

       string[] words = input.Split(new[] {' '}, StringSplitOptions.RemoveEmptyEntries);

       // Verificăm dacă există cel puțin X cuvinte

       if (X > 0 && X <= words.Length)

       {

           // Afișăm al X-lea cuvânt

           Console.WriteLine(words[X - 1]);

       }

       else

       {

           // Afișăm "N/A" dacă nu există suficiente cuvinte

           Console.WriteLine("N/A");

       }

   }

}

Explicația codului:

Citirea frazei:

string input = Console.ReadLine(); citește fraza introdusă de utilizator.

Citirea numărului X:

int X = int.Parse(Console.ReadLine()); citește și convertește la int numărul X introdus de utilizator.

Separarea cuvintelor:

string[] words = input.Split(new[] {' '}, StringSplitOptions.RemoveEmptyEntries);

Split împarte șirul input în funcție de spații.

StringSplitOptions.RemoveEmptyEntries elimină elementele goale rezultate din spațiile multiple.

Verificarea și afișarea rezultatului:

if (X > 0 && X <= words.Length) verifică dacă X este un indice valid (mai mare decât 0 și mai mic sau egal cu numărul de cuvinte).

Console.WriteLine(words[X - 1]); afișează al X-lea cuvânt (indecși zero-based).

else { Console.WriteLine("N/A"); } afișează "N/A" dacă fraza nu conține suficiente cuvinte.