Получить значения из int, затем сохранить в массиве и вычислить по модулю - PullRequest
0 голосов
/ 27 апреля 2018

Мне нужно написать программу, которая должна читать несколько чисел из целого числа, затем сохранять значения в массиве и вычислять по модулю числа, которые я читаю.

Я сделал это до сих пор, но я не знаю, как хранить int в массиве или как вычислять по модулю массива. Надеюсь, что кто-то может помочь.

public class modulo {

public static void main (String[] args) {

    int counter = 0;
    int r = 0;
    int modus;
    int numbers;
    int[] n;

    Out.print("How many numbers you want to calculate: ");
    r = In.readInt ();
    Out.print("With which number you want to calculate the modulo: ");
    modus = In.readInt ();

        while (counter != r) {
            counter++;
            Out.print("Put the " + counter + ".number: ");
            numbers = In.readInt ();
            }

Ответы [ 3 ]

0 голосов
/ 27 апреля 2018

Массивы не являются динамическими, то есть, если задан размер, он останется таким же. Например, "int [] arr = {1, 2, 3, 4, 5, 6}; или int [] arr = new int [5];"

В этом конкретном примере вы можете захотеть сделать второе объявление массива, которое я дал вам в качестве примера, потому что это позволит вам позже объявить размер массива (после того, как вы получите данные о количестве чисел, которые вы хотите вычислить) «

после этого вы спрашиваете, с каким числом хотите вычислить массив. Это можно сделать с помощью цикла for, а затем сделать что-то вроде:

for(int i = 0; i < arr.lenght; i++){ new_arr[i]= arr[i]%mod; //this stores each operation into a new array. }

надеюсь, это поможет!

0 голосов
/ 27 апреля 2018
I do this, still the same

public class modulo {

public static void main (String[] args) {

    int counter = 0;
    int zahlen = 0;
    int modus;
    int numbers;
    int[] n = new int[zahlen];
    int [] new_arr = new int [0];






    Out.print("Wie viele Zahlen moechten Sie berechnen: ");
    zahlen = In.readInt ();
    Out.print("Mit welcher Zahl moechten Sie Modulo berechnen: ");
    modus = In.readInt ();


        while (counter != zahlen) {
            counter++;
            Out.print("Geben sie die " + counter + ".Zahl ein: ");
            numbers = In.readInt ();

        }

        for(int i = 0; i < n.length; i++){
               new_arr[i]= n[i]%modus; 
               Out.print(new_arr);
        }








    }       

}

0 голосов
/ 27 апреля 2018

Прежде всего, вам нужно new ваш массив, иначе вы получите NullPointerException. Поскольку вы уже знаете свой размер массива, это то, что вы напишете после того, как прочитали r из ввода:

int[] n = new n[r]

Затем вам понадобится цикл for для чтения из ввода и сохранения его в массив.

Что касается вашего следующего вопроса, вот ответ.

Как реализовать модуль в списке чисел?

...