Array8. Дан целочисленный массив размера N. Вывести все содержащиеся в данном массиве нечетные числа в порядке возрастания их индексов, а также их количество K.
>Решение Pascal
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | program Array8; var a:array[1..10] of integer; N,i,K:Integer; begin Write('N:'); Readln(N); for i:=1 to N do begin write(i,' :'); readln(a[i]); end; K:=0; for i:=1 to N do if i mod 2 <> 0 then begin writeln(i,' : ',a[i]); inc(k); end; Writeln('K:',K); end. |
>
Решение C
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #include <stdio.h> int main(void) { int a[10]; int n, i,k=0; printf("N: "); scanf("%i",&n); for (i=0; i<n; ++i){ printf("a[%i] : ",i); scanf("%i",&a[i]); } for (i=0; i<n; ++i) if (a[i]%2 != 0){ printf("%i\n",a[i]); ++k; } printf("%i\n",k); return 0; } |
В задаче надо было вывести индекс нечетных чисел, а в решении «С» выводится элемент индекса
Спасибо!
Решение в джаве:
package array8;
import java.util.Scanner;
public class Array8 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int[] mas = new int[n];
int s = 0;
for (int i = 1; i < mas.length; i++) {
mas[i] = in.nextInt();
if (i % 2 == 1){
s++;
System.out.println(mas[i] + " ");
}
}
System.out.println("количество нечетных чисел:" + s);
}
}
добрый человек)
Код не совсем правильный
c++
int n, k =0;
cin >> n;
int arr[100];
for (int i = 1; i > arr[i];
}
for (int i = 1; i <= n; i++)
{
if (arr[i] % 2 == 1)
{
cout <<endl<< arr[i];
k++;
}
else
continue;
}
cout << endl<<" k = "<<k;
}
не работает
добавте пожалуйста в java все то что имееся
JAVA
import java.util.Scanner;
public class arr8 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print(«Enter N: «);
int n = sc.nextInt();
int[] a = new int[n];
for (int i = 0; i < n; i++) {
a[i] = sc.nextInt();
}
int count=0;
for (int i = 0; i < a.length; i++) {
if (a[i]%2==1){
System.out.print(a[i] + " ");
count++;
}
}
}
// static void printArray(int[] number) {
// for (int i = 0; i < number.length; i++) {
// System.out.print(number[i] + " ");
// }
// System.out.println();
// }
}
int n = sc.nextInt();
int[] arr = new int[n];
for (int i = 0; i< arr.length; i++){
arr[i] = sc.nextInt();
}
int k = 0;
for (int i = 0; i< arr.length; i++){
if (i%2 != 0){
System.out.print(arr[i] + " ");
k++;
}
}
System.out.println();
System.out.println(k);
а есть ответы на С++