using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
const int VlakA = 20;
const int VlakB = 15;
const int VlakC = 10;
const int TerA = 60;
const int TerB = 40;
const int PutA = 100;
const int PutB = 50;
static void Optimiziraj(int Kol, bool Jeputnicki)
{
int VagA, VagB;
if(Jeputnicki)
{
VagA = PutA;
VagB = PutB;
}else{
VagA = TerA;
VagB = TerB;
}
int velikih = Kol / VagA;
int ostatak = Kol % VagA;
int malih = 0;
if (ostatak > 0)
{
//Nestane u manji vagon
if (ostatak > VagB)
{
velikih++;
}
else
{
malih = 1;
//Racunamo moguc visak prostora u zadnja 2 vagona
if (((ostatak) + VagA) <= (VagB * 2))
{
malih = 2;
velikih -= 1;
}
}
}
int vagona = velikih + malih;
int LokA = vagona / VlakA;
vagona=(vagona % VlakA);
int LokB = vagona/VlakB;
vagona=(vagona % VlakB);
int LokC = 0;
if (vagona > 0)
{
if (vagona <= VlakC)
LokC = 1;
else
LokC = 2;
}
Console.Out.Write("Lokomotiva A: ");
Console.Out.WriteLine(LokA);
Console.Out.Write("Lokomotiva B: ");
Console.Out.WriteLine(LokB);
Console.Out.Write("Lokomotiva C: ");
Console.Out.WriteLine(LokC);
Console.Out.Write("Velkih: ");
Console.Out.WriteLine(velikih);
Console.Out.Write("Malih: ");
Console.Out.WriteLine(malih);
}
static void Main(string[] args)
{
int teret;
string odgovor;
bool jeputnicki=false;
while (true)
{
Console.Out.Write("Dali je vlak putnicki (da)? ");
odgovor = Console.In.ReadLine();
jeputnicki = false;
if (odgovor.ToLower().Equals("da") || odgovor.ToLower().Equals("d"))
jeputnicki=true;
Console.Out.Write("Unesi broj " + (jeputnicki ? "putnika" : "tereta") + ":");
odgovor = Console.In.ReadLine();
teret = Int32.Parse(odgovor);
Optimiziraj(teret, jeputnicki);
}
}
}
}