Advertisement
Guest User

Untitled

a guest
Aug 6th, 2021
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.04 KB | None | 0 0
  1. using System;
  2.  
  3. namespace CinemaTickets
  4. {
  5.     class Program
  6.     {
  7.         static void Main(string[] args)
  8.         {
  9.             string movieName = Console.ReadLine();
  10.  
  11.             double freeSpacesOfCurrentMovie = 0;
  12.             string typeOfCurrentTicket = "";
  13.             double totalStudentTickets = 0;
  14.             double totalStandardTickets = 0;
  15.             double totalKidsTickets = 0;
  16.             double ticketsOfCurrentMovieCount = 0;
  17.             double totalTickets = 0;
  18.  
  19.             while (movieName != "Finish")
  20.             {
  21.                 freeSpacesOfCurrentMovie = double.Parse(Console.ReadLine());
  22.  
  23.                 //typeOfCurrentTicket = Console.ReadLine(); това трябва да е вътре в цикъла
  24.                 while (ticketsOfCurrentMovieCount < freeSpacesOfCurrentMovie)
  25.                 {
  26.                     typeOfCurrentTicket = Console.ReadLine();
  27.                     if (typeOfCurrentTicket == "End")
  28.                     {
  29.                         break;
  30.                     }
  31.                     switch (typeOfCurrentTicket)
  32.                     {
  33.                         case "student": totalStudentTickets++; break;
  34.                         case "standard": totalStandardTickets++; break;
  35.                         case "kid": totalKidsTickets++; break;
  36.                     }
  37.                     ticketsOfCurrentMovieCount++;
  38.                     totalTickets++;
  39.                     //typeOfCurrentTicket = Console.ReadLine(); това не трябва да е тук, защото четеш следващия билет преди да мине проверката дали има свободни места
  40.                 }
  41.                 double pOccupancyOfTheHall = ticketsOfCurrentMovieCount / freeSpacesOfCurrentMovie * 100;
  42.                 Console.WriteLine($"{movieName} - {pOccupancyOfTheHall:f2}% full.");
  43.                 ticketsOfCurrentMovieCount = 0;
  44.                 //if (typeOfCurrentTicket == "Finish") това не се изисква по условие. Заради това минават нулевите тестове и те кара да мислиш, че е вярно решението
  45.                 //{
  46.                 //    break;
  47.                 //}
  48.                 movieName = Console.ReadLine();
  49.             }
  50.             double pStudentTickets = totalStudentTickets / totalTickets * 100;
  51.             double pStandardTickets = totalStandardTickets / totalTickets * 100;
  52.             double pKidsTickets = totalKidsTickets / totalTickets * 100;
  53.             //if (typeOfCurrentTicket == "Finish")        както горното- това просто нагажда грешното решение към нулевите тестове
  54.             //{
  55.                 Console.WriteLine($"Total tickets: {totalTickets}");
  56.                 Console.WriteLine($"{pStudentTickets:f2}% student tickets.");
  57.                 Console.WriteLine($"{pStandardTickets:f2}% standard tickets.");
  58.                 Console.WriteLine($"{pKidsTickets:f2}% kids tickets.");
  59.            // }
  60.         }
  61.     }
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement