Поиск по этому блогу

понедельник, 11 апреля 2016 г.

Урок №4. Продовжеємо працювати з масивом. Приклади

Сьогоднішній урок я прясвячу розвязуванню прикладів.

Приклад 1
1. Задано дійсні величини a,b (a < b) і масив чисел X(n), n ≤ 200 . Розробити програму, яка обчислює суму всіх X(i) < a , добуток всіх X(i) > b і знаходить max X(i) та min X(i) серед X(i) ∈[a,b], i = 1,2,...,n.
Нам буде потрібен один масив Х, змінні  a i b. Змінні для суми, добутку , мінімального значення та максимального.
Масив зробимо int.

package lesson1;
import java.util.Scanner;
public class zav2 {
public static void main(String[] args){
int[] X = new int[200];
int[] Y = new int[200];
int n; int sum = 0; int dob = 1;//добуток робимо рівним 1 ,
                                    // бо коли ми будемо множити на інші елементи буде завжди 0;
int min,max,a,b,j=0,k=0;
System.out.println("Ведіть кількість елементів \n");
Scanner scn = new Scanner(System.in);
n = scn.nextInt();
for (int i = 0; i < n; i++) {
System.out.print("X["+i+"] = ");
X[i] = scn.nextInt(); }
System.out.println("a = ");
a = scn.nextInt();
System.out.println("b = ");
b = scn.nextInt();
max=b;
min=a;
for(int i =0 ; i<n ; i++)
{
if(X[i]<a)
sum += X[i];
if(X[i]>b)
dob *= X[i];
if(X[i]>=a && X[i]<=b)
{
Y[j] = X[i];
j++;
k++;
}
}
max = Y[0];
min = Y[0];
for(j=0;j<k;j++)
{
if(Y[j]>max)
max = Y[j];
if(Y[j]<min)
min = Y[j];
}
System.out.println("Сума всіх Х[i]<a = "+sum);
System.out.println("Добуток всіх [i]>b = "+dob);
System.out.println("Мінімальне значення = "+min);
System.out.println("аксимальне значення = "+max);
scn.close();}}
Приклад 2
Задано масив дійсних чисел A(2n), n ≤ 200 . Розробити програму, яка обчислює суму тих чисел із A(n +1),..., A(2n) , які перевищують середнє арифметичне значення чисел A(1),..., A(n) .
package lesson1;
import java.util.Scanner;
public class zav2 {
public static void main(String[] args){
int[] X = new int[400];
int n; int sum = 0; int sum1 = 0;
System.out.println("Ведіть кількість елементів \n");
Scanner scn = new Scanner(System.in);
do{n = scn.nextInt();
}while(n>400);

for (int i = 0; i < (2*n); i++) {
System.out.print("X["+i+"] = ");
X[i] = scn.nextInt(); }
for(int i=0;i<n;i++)
sum += X[i];
sum /=n;
for(int i=n;i<(2*n);i++)
if(X[i] > sum)
sum1 += X[i];
System.out.println("Сума чисел які перевищують середнє арифметичне = "+sum1);
scn.close();}}
При винекненні питань , прошу писати в коментарії, постараюсь допомогти.

1 комментарий: