it4life - Portal de Informática

ntome


1.0 user
5 posts

Exercício 1

Código: java
/* * Exercício 1 * Construa um programa que recebe pares de números inteiros (terminando quando for * introduzido o par 0,0) e permita mostrar para cada par uma ou mais das seguintes opções: * * - Menor múltiplo comum entre os números * - Divisores comuns entre os números * - Todos os números primos compreendidos entre os números * *O programa deve ser implementado usando um menu para permitir ao utilizador escolher cada uma das opções. * */package trabalho2_ex1;/** * @author 1020144 * @author 1NC */import java.util.Scanner;public class Main {    /**     *      * @param num     * @return 0 se não primo     * @return 1 se primo     */    public static int Primo(int num) {        for (int i = 2; i <= num / 2; i++) {            if (num % i == 0) {                return 0;            }        }        return 1;    }    public static void Calculaprimos(int vec[]) {        int flag = 0;        System.out.println("");        System.out.println("");        System.out.println("Os primos são:");        for (int i = vec[0]; i < vec[1]; i++) {            if (Primo(i) == 1) {                flag = 1;                System.out.println(i);            }        }        if (flag == 0) {            System.out.println("Não ha primos entre os numeros");            System.out.println("");            System.out.println("");        }    }    public static void Menu() {        System.out.println("");        System.out.println("");        System.out.println("Escolha uma das seguintes opções:");        System.out.println("1 - Menor múltiplo comum entre os números");        System.out.println("2 - Divisores comuns entre os números");        System.out.println("3 - Todos os números primos compreendidos entre os números");        System.out.println("0 - Sair");        System.out.println("");        System.out.println("Opção?:");        System.out.println("");    }    public static void Recolhevec(int par[]) {        Scanner Ler = new Scanner(System.in);//1--------------------- recolha de valores a calcular--------------------------        System.out.println("Quais os numeros a verificar?");        System.out.println("Para sair escreva 0 (zero) em ambos os números ");        System.out.println("1º: ");        par[0] = Ler.nextInt();        System.out.println("2º: ");        par[1] = Ler.nextInt();        Ordena(par);//2--------------------- Validação de positivos--------------------------        while (par[0] < 0 || par[1] < 0) {            System.out.println("");            System.out.println("");            System.out.println("  Atenção: embora alguns "                    + "autores considerem a hipotese de haver números \nprimos negativos,"                    + " bem como múltiplos e divisores "                    + "apenas consideramos\nestes como pertencentes a N");            System.out.println("");            System.out.println("");            System.out.println("Quais os numeros a verificar?");            System.out.println("Para sair escreva 0 (zero) em ambos os números ");            System.out.println("1º: ");            par[0] = Ler.nextInt();            System.out.println("2º: ");            par[1] = Ler.nextInt();        }//2--------------------- Validação de positivos--------------------------//1--------------------- recolha de valores a calcular--------------------------    }    public static void Multiplo(int vec[]) {//--------------------- inicia valores--------------------------                   int i, j, a, b;        a = vec[0];        b = vec[1];        j = 1;        if (a == b) {            j = a;        } else if(a==0 || b==0){            j=0;        }else{            for (i = 2; ((a > 1) || (b > 1)); i++) {                while (((a % i) == 0) || ((b % i) == 0)) {                    if ((a % i) == 0) {                        a = a / i;                    }                    if ((b % i) == 0) {                        b = b / i;                    }                    j = j * i;                }            }        }        System.out.println("");        System.out.println("");        System.out.println("O minimo multiplo comun e:");        System.out.println(j);        System.out.println("");        System.out.println("");    }    public static void Ordena(int[] num) {        int tmp;        if (num[0] > num[1]) {            tmp = num[0];            num[0] = num[1];            num[1] = tmp;        }    }    public static void Divisores(int vec[]) {        int i;        System.out.println("");        System.out.println("");        System.out.println("Os divisores comuns são:");        System.out.println("1");        for (i = 2; i < (vec[1] / 2); i++) {            if ((vec[1] % i == 0) && (vec[0] % i == 0)) {                System.out.println(i);            }        }        System.out.println("");        System.out.println("");    }    public static void main(String[] args) {//1--------------------- Declaração de variaveis--------------------------        Scanner Ler = new Scanner(System.in);        int[] par = new int[2];        int Opi;//1--------------------- Declaração de variaveis--------------------------//2--------------------- motor e menu --------------------------        Recolhevec(par);        while (par[0] != 0 || par[1] != 0) {            Menu();            Opi = Ler.nextInt();            while (Opi < 0 || Opi > 3) {                System.out.println("Opção inválida");                Menu();                Opi = Ler.nextInt();            }            switch (Opi) {                case 1:                    Multiplo(par);                    break;                case 2:                    Divisores(par);                    break;                case 3:                    Calculaprimos(par);                    break;                default:                    ;            }            Recolhevec(par);        }//2--------------------- motor e menu --------------------------        System.out.println("Obrigado?");    }}

ntome


1.0 user
5 posts

Exercício 2

Código: java
/*Exercício 2 * * Crie um programa que leia o nome dos N alunos de uma turma * e associe a cada aluno uma chave que é um número inteiro do * intervalo [100, 1000] gerado aleatoriamente. * * O programa deve mostrar o nome do(s) aluno(s) que lhes foi atribuída a maior chave. */package trabalho2_ex2;import java.util.Scanner;import java.util.Formatter;import java.util.Random;public class Main {//-----------------------declaração de objectos----------------------    private static Formatter out = new Formatter(System.out);//-----------------------declaração de objectos----------------------/* * [in] - String - Matriz a ordenar * Ordena uma Matriz decrescentemente */    private static void Ordena(String[][] array) {        String aux;        for (int i = 0; i < array.length - 1; i++) {            for (int j = i + 1; j < array.length; j++) {                if (array[i][1].compareToIgnoreCase(array[j][1]) < 0) {                    aux = array[i][0];                    array[i][0] = array[j][0];                    array[j][0] = aux;                    aux = array[i][1];                    array[i][1] = array[j][1];                    array[j][1] = aux;                }            }        }    }    private static void Listar(String[][] array, int num) {        String[][] tmp = new String[array.length][2];        System.arraycopy(array, 0, tmp, 0, array.length);        Ordena(tmp);        if (num > tmp.length) {            System.out.println("ATENÇÃO: NÃO INSERIU TANTOS ALUNOS\n\n");            out.format("OS %d ALUNOS QUE INSERIU FORAM:\n", tmp.length);            for (int i = 0; i < tmp.length; i++) {                out.format("%3sº: %s - %4s \n", i + 1, tmp[i][0], tmp[i][1]);            }        } else {            for (int i = 0; i < num; i++) {                out.format("%3sº: %s - %4s \n", i + 1, tmp[i][0], tmp[i][1]);            }        }    }    private static boolean Descartes(String[][] array, String cogito) {        for (int i = 0; i < array.length; i++) {            if (cogito.equalsIgnoreCase(array[i][1])) {                return true;            }        }        return false;    }    private static String randomico(String[][] array) {//------------------------declaração de variaveis e objectos----------------------------        Random randomGenerator = new Random();        int randomInt = randomGenerator.nextInt(1001);        String texto;//------------------------declaração de variaveis e objectos----------------------------        texto = Integer.toString(randomInt);        while ((randomInt < 100 || randomInt > 1000) || (Descartes(array, texto))) {            randomInt = randomGenerator.nextInt(1001);        }        texto = Integer.toString(randomInt);        return texto;    }    private static String[][] Insere(String[][] array, String nome) {        String[][] temp = new String[array.length + 1][2];        System.arraycopy(array, 0, temp, 0, array.length);        temp[temp.length - 1][0] = nome;        temp[temp.length - 1][1] = randomico(array);        return temp;    }    public static void main(String[] args) {//------------------------declaração de variaveis e objectos----------------------------        String[][] Matriz = new String[0][2];        String[][] Aux;        String Aluno;        Scanner Ler = new Scanner(System.in);        int op;//------------------------declaração de variaveis e objectos----------------------------//-------------------------------motor------------------------------        System.out.println("Por favor insira o primeiro aluno");        System.out.println("Para sair escreva EXIT");        Aluno = Ler.nextLine();        if (!Aluno.equalsIgnoreCase("exit")) {            Matriz = Insere(Matriz, Aluno);            System.out.println("Por favor insira o próximo aluno");            System.out.println("Para sair escreva EXIT");            while (!Aluno.equalsIgnoreCase("EXIT")) {                Aluno = Ler.nextLine();                if (!Aluno.equalsIgnoreCase("exit")) {                    Matriz = Insere(Matriz, Aluno);                }                System.out.println("Por favor insira o proximo aluno");                System.out.println("Para sair escreva EXIT");            }            System.out.println("quantos alunos pretende listar?");            op = Ler.nextInt();                                              if (op != 0) {                    Listar(Matriz, op);                }            }        }    }

Segue-nos nas redes sociais