Вопрос задан 02.05.2019 в 12:37. Предмет Информатика. Спрашивает Кирочкин Богдан.

Помогите пожалуйста!!! (на языке программирования СИ!!) Даны действительные числа a1,....,an

(n<=150) удалить из последовательности те члены , поpядковые номеpа котоpых кpатны 4 , сохpанив пpежним поpядок оставленных членов.(За- мечание:удалить из существующего массива, а не создавать но- вый !).
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Ниязбекова Нурай.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main() {
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);

    int n, i, j;

    do {
    printf(" Введите n<=150. n = ");
    scanf("%d", &n);
    printf("\n");
    if (n > 150) printf(" Слишком много!\n");
    } while (n > 150);
    
    float a[n];
    srand(time(NULL));

    printf(" ***Исходный массив ***\n");
    for (i = 1; i <= n; i++)
    {
        a[i] = (float)rand() / RAND_MAX;    
        printf("%.3f ", a[i]);    
    }
    printf("\n\n");

    for (i = 4; i <= n; i+=3)
    {
            for (j = i; j < n; j++) a[j]=a[j+1];
            --n;
    }
   
    printf(" ***Измененный массив ***\n");
    for (i = 1; i <= n; i++) printf("%.3f ", a[i]);    
    
    return 0;
}
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи в языке программирования Си можно воспользоваться следующим алгоритмом:

1. Создать массив a размером n и заполнить его действительными числами a1, a2, ..., an. 2. Создать переменную count и инициализировать ее нулем. Она будет использоваться для подсчета количества сохраненных элементов. 3. Создать цикл, который будет проходить по всем элементам массива a. 4. Внутри цикла проверить, является ли текущий индекс кратным 4 (index % 4 == 0). 5. Если индекс кратен 4, то увеличить переменную count на 1. 6. Если индекс не кратен 4, то сохранить текущий элемент массива a[count] = a[index] и увеличить переменную count на 1. 7. После завершения цикла, переменная count будет содержать количество сохраненных элементов. 8. Создать цикл, который будет проходить от count до n и заполнять оставшиеся элементы массива нулями (a[i] = 0). 9. Вывести на экран полученный массив.

Ниже приведен пример реализации данного алгоритма на языке программирования Си:

```c #include

int main() { int n; printf("Введите количество элементов массива: "); scanf("%d", &n);

if (n > 150) { printf("Ошибка! Количество элементов должно быть не больше 150.\n"); return 0; }

float a[150]; printf("Введите элементы массива:\n"); for (int i = 0; i < n; i++) { scanf("%f", &a[i]); }

int count = 0; for (int i = 0; i < n; i++) { if (i % 4 != 0) { a[count] = a[i]; count++; } }

for (int i = count; i < n; i++) { a[i] = 0; }

printf("Измененный массив:\n"); for (int i = 0; i < n; i++) { printf("%f ", a[i]); }

return 0; } ```

Пользователю будет предложено ввести количество элементов массива и сами элементы. Затем программа выполнит указанные операции и выведет измененный массив на экран.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос