Определить, есть ли в заданном целочисленном векторе A (N) элементы со значением, равным заданному числу B - C (СИ)

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

Если в заданном целочисленном векторе A(N) есть элементы со значением, равным заданному числу B, то переменной С присвойте значение, равное сумме всех элементов, предшествующих первому по порядку такому элементу; в противном случае вывести соответствующий текст Помогите с решением математически... что то не могу понять как тут решить( Пожалуйста))

Код к задаче: «Определить, есть ли в заданном целочисленном векторе A (N) элементы со значением, равным заданному числу B - C (СИ)»

textual
#include <stdio.h>
#include <stdlib.h>
 
const int* exists(const int *ptr, size_t size, int element)
{
    size_t i;
    for (i = 0; i < size; i++)
    {
        if (ptr[i] == element)
        {
            return ptr + i;
        }
    }
    return NULL;
}
 
int sum(const int* begin, const int* end)
{
    int sum = 0;
    while (begin != end)
    {
        sum += *begin++;
    }
    return sum;
}
 
int main()
{
    const size_t n = 10;
    int array[10] = { 1, 2, 3, 4, 5, 
                     6, 7, 8, 9, 10 };
    int c = -1;
    int b = 4;
    const int *ptr = exists(array, n, b);
    if (ptr)
    {
        c = sum(array, ptr);
        printf("Sum: %d\n", c);
    }
    else
    {
        printf("%d not found in array\n", b);
    }
    return EXIT_SUCCESS;
}
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.

15   голосов, оценка 3.533 из 5


СДЕЛАЙТЕ РЕПОСТ