Java学習の難所、配列とアルゴリズムの問題集です。

Q1
{3,8,10,5,4}という配列に入っている奇数をすべて表示する

[実行例]
3
5

public class Q1 {
	public  static void main(String[] args){
		int[] nums={3,8,10,5,4};
		for(int n : nums){
			if(n % 2 != 0){
				System.out.println(n);
			}
		}
	}
}

Q2
{3,8,10,5,4}という配列の要素をすべて2倍にする。
変更された配列を出力する。
[実行例]
6
16
20
10
8

public class Q2 {
	public  static void main(String[] args){
		int[] nums={3,8,10,5,4};
		for(int i=0;i<nums.length;i++){
			nums[i] *=2;
		}
		for(int n : nums){
			System.out.println(n);
		}
	}
}

Q.1〜100の乱数が5つ入った配列nums1を作成し表示する。
次にnums1の要素をそれぞれ3倍した値を持つ配列nums2を作成し表示せよ。
[実行例]
***nums1***
29
9
58
42
91
***nums2***
87
27
174
126
273

public class Q3{
  public static void main(String[] args){
    int[] nums1=new int[5];
    for(int i=0;i<nums1.length;i++){
      nums1[i]=new java.util.Random().nextInt(100)+1;
    }
    System.out.println("***nums1***");
    for(int n:nums1){
      System.out.println(n);
    }
    int[] nums2=new int[5];
    for(int i=0;i<nums2.length;i++){
      nums2[i]=nums1[i]*3;
    }
    System.out.println("***nums2***");
    for(int n:nums2){
      System.out.println(n);
    }
  }
}

Q4
{3,8,10,5,4}という配列を逆順に並び替える(reverse)。
変更された配列を出力する。
[実行例]
4
5
10
8
3

public class Q4 {
	public  static void main(String[] args){
		int[] nums={3,8,10,5,4};
		for(int i=0;i<nums.length/2;i++){
			int temp=nums[i];
			nums[i]=nums[nums.length-1-i];
			nums[nums.length-1-i]=temp;
		}
		for(int n : nums){
			System.out.println(n);
		}
	}
}

Q5
{3,8,10,5,4}という配列を昇順に並び替える(sort)。
変更された配列を出力する。
[実行例]
3
4
5
8
10

public class Q5 {
	public  static void main(String[] args){
		int[] nums={3,8,10,5,4};
		for(int i=0;i<nums.length-1;i++){
			for(int j=i+1;j<nums.length;j++){
				if(nums[i] > nums[j]){
					int temp=nums[i];
					nums[i]=nums[j];
					nums[j]=temp;
				}
			}
		}
		for(int n : nums){
			System.out.println(n);
		}
	}
}

Q6
1〜100の乱数を100個作りその中に77があるかを探索する。
あれば、その最初のインデックスを表示し、なければ「含まれていない」と表示する。
[実行例]
インデックス52が77です

public class Q6 {
	public  static void main(String[] args){
		int[] nums=new int[100];
		for(int i=0;i<nums.length;i++){
			nums[i]=new java.util.Random().nextInt(100)+1;
		}
		int i=0;
		for(;i<nums.length;i++){
			if(nums[i] == 77){
    System.out.println("インデックス"+ i + "が77です");
				break;
			}
		}
		if(i == nums.length){
			System.out.println("配列に77は含まれていません");
		}
	}
}