Программа просит ввести 10 значений и суммировать их

#java #eclipse #for-loop #foreach #eclipse-cdt

#java #eclipse #for-цикл #foreach #eclipse-cdt

Вопрос:

Использование (для каждого) Я хочу, чтобы программа запрашивала ввод 10 значений, кратных 10, сохраняла их внутри массива и находила сумму этих чисел, которые были введены в этот массив… проблема в том, что код обрабатывает только последний элемент, который я ввел в проблемную фотографию

 package lesson27task2Pac;
import java.util.Scanner;
public class Lesson27Task2 {

    public static void main(String[] args) {

    // TODO Auto-generated method stub
    

  
    int larr;
    Scanner scw = new Scanner(System.in);
    System.out.println("Enter Aarray Lenght :");
    larr=scw.nextInt();
    
    int [] array = new int [larr];
    
    
    Scanner sce = new Scanner(System.in);
    System.out.println("Enter multiples :=====>");

    for (int e : array) {
    array[e] = sce.nextInt();
    }

    for (int e: array) {
        
        if (e % 10 == 0) {
            System.out.println(e  "");
        } else {
            System.out.println("Not a multiple !!!");
        }
    
    }
    int sum = 0 ;
    for (int e : array) {
        sum = sum   e;
    }
    System.out.println("Summation of array elements : " sum);}}
 

Ответ №1:

Этот тип цикла foreach

 for (int e : array) {
   array[e] = sce.nextInt();
}
 

возвращает значения массива и помещает его в значение e .

Поскольку массив имеет только значения по умолчанию 0 , вы всегда делаете

 array[0] = sce.nextInt();
 

Попробуйте использовать обычный цикл for

 for (int e = 0; e < array.length; e  )
{
    array[e] = sce.nextInt();
}