Как найти количество нечетных элементов массива

1 / 1 / 1

Регистрация: 27.12.2012

Сообщений: 14

1

Найти количество нечетных элементов массива

29.12.2012, 00:31. Показов 45356. Ответов 4


Студворк — интернет-сервис помощи студентам

Найти количество нечетных элементов массива.



0



Talkoflights

25 / 25 / 17

Регистрация: 23.09.2012

Сообщений: 274

29.12.2012, 00:37

2

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
uses crt;
var
  a:array[1..1000] of longint;
  i,n,kol:longint;
begin
writeln('vvedite kol-vo elementov massiva');
readln(n);
for i:=1 to n do
begin
writeln('a[',i,']=');
readln(a[i]);
if a[i] mod 2=0 then
inc(kol);
end;
writeln('kol-vo iskomih=',kol);
end.



1



Taftis

Pascal, Delphi, C++

215 / 128 / 91

Регистрация: 01.12.2012

Сообщений: 628

29.12.2012, 09:02

3

Лучший ответ Сообщение было отмечено как решение

Решение

оно ищет четные вот для нечетных

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
uses crt;
var
  a:array[1..1000] of longint;
  i,n,kol:longint;
begin
writeln('vvedite kol-vo elementov massiva');
readln(n);
for i:=1 to n do
begin
writeln('a[',i,']=');
readln(a[i]);
if a[i] mod 2=1 then
inc(kol);
end;
writeln('kol-vo nechetnih elementov=',kol,' iz ',n);
end.



4



25 / 25 / 17

Регистрация: 23.09.2012

Сообщений: 274

31.12.2012, 16:34

4

Taftis,
ага, спасибо, перепутал.



0



0 / 0 / 0

Регистрация: 17.04.2021

Сообщений: 5

18.04.2021, 17:08

5

а можете пожалуйста на С++ код из Pascal перевести?



0



Improve Article

Save Article

Like Article

  • Read
  • Discuss
  • Improve Article

    Save Article

    Like Article

    For the given array of integers, count even and odd elements.

    Examples: 

    Input: 
    int arr[5] = {2, 3, 4, 5, 6}
    Output: 
    Number of even elements = 3    
    Number of odd elements = 2  
    
    Input:
    int arr[5] = {22, 32, 42, 52, 62}
    Output: 
    Number of even elements = 5  
    Number of odd elements = 0

    Solution: We can also check if a number is odd or even

    • By doing AND of 1 and that digit, if the result comes out to be 1 then the number is odd otherwise even.
    • By its divisibility by 2. A number is said to be odd if it is not divisible by 2, otherwise its even.

    Here, we will check if a number is odd, then we will increment the odd counter otherwise we will increment the even counter. 

    Below is the implementation of the above approach:

    C

    #include <stdio.h>

    void CountingEvenOdd(int arr[], int arr_size)

    {

        int even_count = 0;

        int odd_count = 0;

        for (int i = 0; i < arr_size; i++) {

            if (arr[i] & 1 == 1)

                odd_count++;

            else

                even_count++;

        }

        printf("Number of even elements = %d nNumber of odd "

               "elements = %d",

               even_count, odd_count);

    }

    int main()

    {

        int arr[] = { 2, 3, 4, 5, 6 };

        int n = sizeof(arr) / sizeof(arr[0]);

        CountingEvenOdd(arr, n);

    }

    C++

    #include <iostream>

    using namespace std;

    void CountingEvenOdd(int arr[], int arr_size)

    {

        int even_count = 0;

        int odd_count = 0;

        for (int i = 0; i < arr_size; i++) {

            if (arr[i] & 1 == 1)

                odd_count++;

            else

                even_count++;

        }

        cout << "Number of even elements = " << even_count

             << "nNumber of odd elements = " << odd_count;

    }

    int main()

    {

        int arr[] = { 2, 3, 4, 5, 6 };

        int n = sizeof(arr) / sizeof(arr[0]);

        CountingEvenOdd(arr, n);

    }

    Java

    import java.io.*;

    class GFG {

        static void CountingEvenOdd(int arr[], int arr_size)

        {

            int even_count = 0;

            int odd_count = 0;

            for (int i = 0; i < arr_size; i++) {

                if ((arr[i] & 1) == 1)

                    odd_count++;

                else

                    even_count++;

            }

            System.out.println("Number of even"

                               + " elements = " + even_count

                               + " Number of odd elements = "

                               + odd_count);

        }

        public static void main(String[] args)

        {

            int arr[] = { 2, 3, 4, 5, 6 };

            int n = arr.length;

            CountingEvenOdd(arr, n);

        }

    }

    Python3

    def CountingEvenOdd(arr, arr_size):

        even_count = 0

        odd_count = 0

        for i in range(arr_size):

            if (arr[i] & 1 == 1):

                odd_count += 1

            else:

                even_count += 1

        print("Number of even elements = ",

              even_count)

        print("Number of odd elements = ",

              odd_count)

    arr = [2, 3, 4, 5, 6]

    n = len(arr)

    CountingEvenOdd(arr, n)

    C#

    using System;

    class GFG {

        static void CountingEvenOdd(int[] arr, int arr_size)

        {

            int even_count = 0;

            int odd_count = 0;

            for (int i = 0; i < arr_size; i++) {

                if ((arr[i] & 1) == 1)

                    odd_count++;

                else

                    even_count++;

            }

            Console.WriteLine("Number of even"

                              + " elements = " + even_count

                              + " Number of odd elements = "

                              + odd_count);

        }

        public static void Main()

        {

            int[] arr = { 2, 3, 4, 5, 6 };

            int n = arr.Length;

            CountingEvenOdd(arr, n);

        }

    }

    PHP

    <?php

    function CountingEvenOdd( $arr, $arr_size)

    {

        $even_count = 0;         

        $odd_count = 0;             

        for( $i = 0 ; $i < $arr_size ; $i++) 

        {

            if ($arr[$i] & 1 == 1)

                $odd_count ++ ;     

            else                

                $even_count ++ ;         

        }

        echo "Number of even elements = " ,

            $even_count," Number of odd " ,

                "elements = " ,$odd_count ;     

    }

        $arr = array(2, 3, 4, 5, 6);

        $n = count($arr);

        CountingEvenOdd($arr, $n);

    ?>

    Javascript

    <script>

    function CountingEvenOdd(arr, arr_size)

    {

        let even_count = 0;

        let odd_count = 0;

        for (let i = 0; i < arr_size; i++) {

            if (arr[i] & 1 == 1)

                odd_count++;

            else

                even_count++;

        }

        document.write("Number of even elements = " + even_count

            + "<br>" + "Number of odd elements = " + odd_count);

    }

        let arr = [ 2, 3, 4, 5, 6 ];

        let n = arr.length;

        CountingEvenOdd(arr, n);

    </script>

    Output

    Number of even elements = 3
    Number of odd elements = 2

    Time Complexity: O(n)

    Auxiliary Space: O(1) because it is using constant space for variables

    Last Updated :
    13 Mar, 2023

    Like Article

    Save Article

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

    def createArray():
        import random
        lengthArray = int(input("Введите колво чисел от 0 до 50:"))
        array = []
        for i in range(lengthArray):
            array.append(random.randint(0, 50))
    
        return array
    

    Twiss's user avatar

    Twiss

    6,3234 золотых знака24 серебряных знака52 бронзовых знака

    задан 8 апр 2018 в 16:19

    Egor's user avatar

    1

    Чтобы найти сколько чисел нечётные в заданной коллекции:

    odd_count = sum(1 for n in numbers if n & 1)
    

    ответ дан 8 апр 2018 в 21:07

    jfs's user avatar

    jfsjfs

    51.8k11 золотых знаков107 серебряных знаков306 бронзовых знаков

    7

    Создание и подсчет рандомного списка

    import random
    array = []
    for i in range(100):
        b = random.randrange(1, 1000)
        if b % 2 == 1:
            array.append(b)
    print(len(array))
    # 56 в зависимости от рандома
    

    Создание и подсчет чисел от 1 до 100

    a = [i for i in range(100) if i % 2 == 1]
    print(len(a), a)
    # 50
    

    Update

    def count_array(count):
        a = [i for i in count if i % 2 == 1]
        return a
    
    
    def create_array():
        import random
        length_array = int(input("Введите колво чисел от 0 до 50:"))
        array = []
        for i in range(length_array):
            array.append(random.randint(0, 50))
    
        return count_array(array)
    
    print(len(create_array()))
    

    ответ дан 8 апр 2018 в 16:27

    Twiss's user avatar

    TwissTwiss

    6,3234 золотых знака24 серебряных знака52 бронзовых знака

    9

    Возможный такой подяод:

    1. Сделайте новый массив (список) только из нечетных чисел первоначального.
    2. Используйте функцию len().

    Код может выглядать так:

    new_list = [element for element in orig_list if element % 2 == 1]
    necetnych = len(new_list)
    

    Результат оперетор % (модуло) – это остаток по делении первого оператора вторым, и так когда остаток по делении двумя будет 1, первый оператор должен быть
    нечетный.

    ответ дан 8 апр 2018 в 16:34

    MarianD's user avatar

    MarianDMarianD

    14.1k3 золотых знака18 серебряных знаков29 бронзовых знаков

    2

    Gennady

    Гений

    (59259)


    12 лет назад

    Что значит “формулу”? А найти просто. Просмотреть весь масссив и тупо посчитать количество нечетных элементов.

    K := 0;
    for i:=1 to N do if A[ i ] mod 2 = 1 then K := K + 1;

    Яков

    Гуру

    (2729)


    12 лет назад

    если (элемент делить на два равно еденице) то увеличить счетчик нечетных элементов;
    if (arr/2=1) then count:=count+1;

    Дядя Ваня

    Профи

    (959)


    12 лет назад

    паскаль не знаю, знаю другие.. .
    Через цикл проходишь оп масиву смоттришь если элемент делится на два без с остатком значит нечетно.. .
    и делаешь какую то переменну +1 …по моему это mid если не ошибаюсь в паскале

    Формулировка задачи:

    Помогите, пожалуйста.

    Напишите программу, которая формирует массив из 15 случайных целых чисел диапазоне от 1
    до 30. Сделайте контрольный вывод массива. Подсчитайте количество нечетных элементов
    массива.

    Код к задаче: «Подсчитать количество нечетных элементов массива»

    textual

    Листинг программы

    const n=15;
    var
    a:array[1..n] of integer;
    i,k:integer;
    begin
     for i:=1 to n do begin 
      a[i]:=1+random(30);
      write(a[i],' ');
     end;
     writeln;
     k:=0;
      for i:=1 to n do begin 
       if a[i] mod 2 = 1 then
       k:=k+1;
      end;
       writeln('Количество нечетных элементов массива = ',k);
    end.

    Добавить комментарий