public void TestAnteriorMaiorMaximo() { decimal cilindroMaximo = 300; decimal cilindroTeste = 350; Algoritimos alg = new Sstf(cilindroMaximo); alg.cilindroAnterior = cilindroTeste; }
public void TestAtualIgualMaximo() { decimal cilindroMaximo = 300; decimal cilindroTeste = 300; Algoritimos alg = new Sstf(cilindroMaximo); alg.cilindroAtual = cilindroTeste; }
public void TestSentidoParado() { decimal cilindroAnterior = 0; decimal cilindroAtual = 0; Algoritimos alg = new Sstf(this.cilindroMaximo); alg.cilindroAnterior = cilindroAnterior; alg.cilindroAtual = cilindroAtual; Assert.AreEqual("Parado", alg.getSentido()); }
public void TestSentidoIndoBorda() { decimal cilindroAnterior = 0; decimal cilindroAtual = 299; Algoritimos alg = new Sstf(this.cilindroMaximo); alg.cilindroAnterior = cilindroAnterior; alg.cilindroAtual = cilindroAtual; Assert.AreEqual("Indo para a borda", alg.getSentido()); }
public void TestSentidoIntroTrilha0Intermediario() { decimal cilindroAnterior = 43; decimal cilindroAtual = 30; Algoritimos alg = new Sstf(this.cilindroMaximo); alg.cilindroAnterior = cilindroAnterior; alg.cilindroAtual = cilindroAtual; Assert.AreEqual("Indo para a trilha 0", alg.getSentido()); }
public void TestExercicio2Sequencia() { String seqExercicio = "86,1470,913,1774,948,1509,1022,1750,130"; decimal cilindroAnterior = 125; decimal cilindroAtual = 143; Sstf alg = new Sstf(5000); String seqLeitura; alg.cilindroAnterior = Convert.ToInt32(cilindroAnterior); alg.cilindroAtual = Convert.ToInt32(cilindroAtual); alg.setSequencia(seqExercicio); alg.processa(); seqLeitura = alg.getSequenciaLeitura(); Assert.AreEqual("130,86,913,948,1022,1470,1509,1750,1774", seqLeitura); }
public void TestExercicio2Distancia() { String seqExercicio = "86,1470,913,1774,948,1509,1022,1750,130"; decimal cilindroAnterior = 125; decimal cilindroAtual = 143; Sstf alg = new Sstf(5000); int distancia = 0; alg.cilindroAnterior = Convert.ToInt32(cilindroAnterior); alg.cilindroAtual = Convert.ToInt32(cilindroAtual); alg.setSequencia(seqExercicio); alg.processa(); distancia = alg.getDistancia(); Assert.AreEqual(1745, distancia); }
public void TestSequenciaLeitura() { String seqExercicio = "68,14,6,28,130,94,6,42"; decimal cilindroAnterior = 37; decimal cilindroAtual = 20; Sstf alg = new Sstf(300); String seqLeitura; alg.cilindroAnterior = Convert.ToInt32(cilindroAnterior); alg.cilindroAtual = Convert.ToInt32(cilindroAtual); alg.setSequencia(seqExercicio); alg.processa(); seqLeitura = alg.getSequenciaLeitura(); Assert.AreEqual("14,6,6,28,42,68,94,130", seqLeitura); }
public void TestNumeroCilindros() { String seqExercicio = "68,14,6,28,130,94,6,42"; decimal cilindroAnterior = 37; decimal cilindroAtual = 20; Sstf alg = new Sstf(300); int distancia = 0; alg.cilindroAnterior = Convert.ToInt32(cilindroAnterior); alg.cilindroAtual = Convert.ToInt32(cilindroAtual); alg.setSequencia(seqExercicio); alg.processa(); distancia = alg.getDistancia(); Assert.AreEqual(138, distancia); }
static void Main(string[] args) { //var lines = File.ReadAllLines("teste1.txt").Select(x => int.Parse(x)).ToList(); //var disc = new Disk(); //disc.SetQueue(lines.Skip(2).ToList()); //disc.HeadPosition = lines[1]; //disc.Size = lines[0]; ////var fcfs = new Fcfs(disc); ////fcfs.Resolve(); ////fcfs.Print(); ////var sstf = new Sstf(disc); ////sstf.Resolve(); ////sstf.Print(); //var scan = new Scan(disc); //scan.Resolve(); //scan.Print(); inicio: string path = ""; while (true) { Console.WriteLine("Digite o nome do arquivo:"); path = Console.ReadLine(); if (path.Equals("SAIR", StringComparison.InvariantCultureIgnoreCase)) { Environment.Exit(0); } if (!File.Exists(path)) { Console.WriteLine($"Arquivo não encontrado em: {path}"); continue; } break; } var lines = File.ReadAllLines(path).Select(x => int.Parse(x)).ToList(); var disc = new Disk(); disc.SetQueue(lines.Skip(2).ToList()); disc.HeadPosition = lines[1]; disc.Size = lines[0]; var fcfs = new Fcfs(disc); var scan = new Scan(disc); var sstf = new Sstf(disc); string outputText = ""; fcfs.Resolve(); outputText += fcfs.Print() + Environment.NewLine; disc.Free(); sstf.Resolve(); outputText += sstf.Print() + Environment.NewLine; disc.Free(); scan.Resolve(); outputText += scan.Print() + Environment.NewLine; var output = path.Replace(".txt", "_resolved.txt"); File.WriteAllText(output, outputText); Console.WriteLine(); Console.WriteLine(); Console.WriteLine($"ARQUIVO GERADO: {output}"); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Digite SAIR para sair."); Console.WriteLine(); goto inicio; }