Arrays – Java, C++ e C#

Publicado: 1 de fevereiro de 2014 em C#, C/C++, Java

Uma Array também conhecido como matriz é uma lista seqüencial de itens. O tipo de item que você pode armazenar na matriz são definidas pelo tipo de matriz na declaração. Arrays podem ser simples ou multi-dimensional, e cada dimensão pode ter diferentes comprimentos.

No exemplo a seguir complementando o post anterior sobre looping usaremos aqui o comando Continue. este comando força transferência de controle para a proxima expressão, ou seja continua a execução do looping ignorando o ponteiro atual usado nos comandos: do, for e while.

Imagine o seguinte cenário:

Em uma maratona temos 16 corredores homens e mulheres cada um com uma pulseira que envia um sinal para uma rede sem fio e ao cruzar a linha de chegada e automaticamente nos é dados nome e o tempo dos corredores o que fazemos é identificar nos dados quem fez o primeiro e segundo lugar:

Java

public class Looping {

public static void main(String[] args)

 {

      String[] nomes ={     "Elena", "Tomas", "amilton", "Susie", "Felipe", "Mateus", "Alex",     "Fabia", "Joao", "James", "Jane", "Emilia", "Daniel", "Leda",     "Ariana", "Kate"     };

        int[] tempos ={     341, 273, 278, 329, 445, 402, 388, 275, 243, 334, 412, 393, 299,     343, 317, 265     };

          int primeiro = 0;

     int segundo = 0;

     String ganhador = null ;

     String vice = null ;

               for (int i = 0; i < nomes.length; i++)

{

System.out.println(nomes[i]+ ":       " + tempos[i]);

                  if (tempos[i] > primeiro) {primeiro = tempos[i];

                                ganhador = nomes[i];

                               }

}

           System.out.println("Primeiro lugar: "+ ganhador + " com segundos: " + primeiro);

          for (int i = 0; i < nomes.length; i++)

{

if (tempos[i] == primeiro) {continue;}

if (tempos[i] > segundo) {segundo = tempos[i];

                                vice = nomes[i];

                               }

}

               System.out.println("Segundo lugar: "+ vice + " com segundos: " + segundo);   }

}

C++

#include "stdafx.h"

 #include <iostream>

 #include <string>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])

{

const int itens = 16;

    string nomes[itens] = {   "Elena", "Tomas", "amilton", "Susie", "Felipe", "Mateus", "Alex",   "Fabia", "Joao", "James", "Jane", "Emilia", "Daniel", "Leda",   "Ariana", "Kate"  };

int tempos[itens] = {   341, 273, 278, 329, 445, 402, 388, 275, 243, 334, 412, 393, 299,   343, 317, 265  };

int primeiro = 0;

int segundo = 0;

string ganhador = "";

string vice = "";

for (int i = 0; i < itens ; i++)  {   cout <<  nomes[i] << ":         " << tempos[i] <<"\n";

if (tempos[i] > primeiro) {    primeiro = tempos[i];

    ganhador = nomes[i];

   }

  }

       cout  << "\nPrimeiro lugar: " << ganhador << " com segundos: " << primeiro << "\n";

for (int i = 0; i < itens; i++)

  {

if (tempos[i] == primeiro) { continue; }

   if (tempos[i] > segundo) {    segundo = tempos[i];    vice = nomes[i];   }

}

cout << "Segundo lugar: " << vice << " com segundos: " << segundo<< "\n\n";

  system("pause");

return 0;

}

C#

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace ConsoleApplication33

{

class Program

{

static void Main(string[] args)

{

String[] nomes ={     "Elena", "Tomas", "amilton", "Susie", "Felipe", "Mateus", "Alex",     "Fabia", "Joao", "James", "Jane", "Emilia", "Daniel", "Leda",     "Ariana", "Kate"     };

int[] tempos ={     341, 273, 278, 329, 445, 402, 388, 275, 243, 334, 412, 393, 299,     343, 317, 265     };

int primeiro = 0;

int segundo = 0;

String ganhador = null ;

String vice = null ;

for (int i = 0; i < nomes.Length; i++)

{

Console.WriteLine(nomes[i]+ ":         " + tempos[i]);
                  if (tempos[i] > primeiro) {primeiro = tempos[i];
                                ganhador = nomes[i];

}

}

Console.WriteLine("Primeiro lugar: "+ ganhador + " com segundos: " + primeiro);

for (int i = 0; i < nomes.Length; i++)

{

if (tempos[i] == primeiro) {continue;}

if (tempos[i] > segundo) {segundo = tempos[i];

vice = nomes[i];

}

}

Console.WriteLine("Segundo lugar: " + vice + " com segundos: " + segundo);

Console.ReadKey();

}

}

}

Exercicios: Mostrar o tempo do terceiro ganhador e customizar o código fonte para que fique mais compacto.

Publicidade

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s