• ❓Решение отправлено
    • 15846 id
    • 300.0 ₽
    • 20.0%
Александр Котляр
  • S:19:03:32 01.05
  • R:19:03:37 01.05
  • По заказу 15846 Предложение от исполнителя №252 ❗Работает недавно❗ 📚 Информатика 💰 1000 ₽ 💬 : Давай посмотрю
    SYSTEM
  • S:19:04:00 01.05
  • R:19:04:04 01.05
  • Александр Котляр начал диалог с Валентин Витринский
    Александр Котляр
  • S:19:04:05 01.05
  • R:19:04:09 01.05
  • Исполнитель пока не зашел в беседу При длительном отсутствии специалиста в чате пишите администратору https://vk.com/p0m0shnik
    Валентин Витринский
    • S:19:04:05 01.05
    • R:19:04:13 01.05
    Привет
    Александр Котляр
  • S:19:04:12 01.05
  • R:19:04:15 01.05
  • 🤖:Все подключились. Не забудь поздороваться)
    Александр Котляр
  • S:19:04:19 01.05
  • R:19:04:23 01.05
  • Привет
    Валентин Витринский
    • S:19:04:23 01.05
    • R:19:04:26 01.05
    Привет
    Валентин Витринский
    • S:19:04:27 01.05
    • R:19:04:29 01.05
    Подожди
    Александр Котляр
  • S:19:04:27 01.05
  • R:19:04:30 01.05
  • Что за дз
    Валентин Витринский
    • S:19:04:33 01.05
    • R:19:04:35 01.05
    По поводу цены
    Валентин Витринский
    • S:19:04:39 01.05
    • R:19:04:48 01.05
    Там задача одна
    Валентин Витринский
    • S:19:04:47 01.05
    • R:19:04:50 01.05
    Просто весь код я написал
    Валентин Витринский
    • S:19:04:55 01.05
    • R:19:04:57 01.05
    И проблемка появилась
    Валентин Витринский
    • S:19:05:24 01.05
    • R:19:05:25 01.05
    Язык си если что
    Александр Котляр
  • S:19:05:30 01.05
  • R:19:05:34 01.05
  • Ты в визуал Студио писал ?
    Валентин Витринский
    • S:19:05:38 01.05
    • R:19:05:40 01.05
    Да
    Александр Котляр
  • S:19:05:38 01.05
  • R:19:05:48 01.05
  • В курсе
    Александр Котляр
  • S:19:05:50 01.05
  • R:19:05:55 01.05
  • Что за проблемка
    Валентин Витринский
    • S:19:05:56 01.05
    • R:19:05:58 01.05
    Не могу разобраться как мне организовать ввод массива по концевому признаку. В качестве концевого признака выступает любая ошибка, которая возникает при очередном вводе значения с помощью функции scanf. Например, при вводе последовательности 1 2 3 a должен быть сформирован массив из трёх элементов со значениями 𝐴[0] = 1, 𝐴[1] = 2, 𝐴[2] = 3. В случае, если массив уже заполнен, а концевой признак ещё не наступил, ввод элементов в массив прекращается. Такое «переполнение» не считать ошибкой: про грамма должна обработать полученный массив из десяти элементов, но функция main в такой ситуации должна вернуть специальный код возврата, равный 100. Упорядочить массив по возрастанию с помощью сортировки вставками (англ. Insertion Sort) и вывести на экран. #include <stdio.h> #define N 10 #define GOOD 0 #define ERROR_IO 1 #define ERROR_N 2 #define END_OF_INPUT 100 int input_an_array(int arr[], size_t n) { int value; int i; for (i = 0; i < n; i++) { if (scanf(*%d*, &value) != 1) { return END_OF_INPUT; // Обрываем ввод при любой ошибке ввода } arr[i] = value; } return GOOD; } void insertion_sort(int arr[], int n) { int i, j, key; for (i = 1; i < n; i++) { key = arr[i]; j = i - 1; while (j >= 0 && arr[j] > key) { arr[j + 1] = arr[j]; j = j - 1; } arr[j + 1] = key; } } void output_array(int arr[], size_t n) { for (int i = 0; i < n; i++) { printf(*%d *, arr[i]); } printf(*\n*); } int main() { int n; int arr[N]; printf(*Enter array elements:\n*); int input_result_array = input_an_array(arr, N); if (input_result_array == END_OF_INPUT) { printf(*End of input. Sorted array:\n*); insertion_sort(arr, N); output_array(arr, N); return END_OF_INPUT; } insertion_sort(arr, N); printf(*Sorted array:\n*); output_array(arr, N); return 0; }
    Валентин Витринский
    • S:19:06:02 01.05
    • R:19:06:04 01.05
    вот
    Александр Котляр
  • S:19:06:36 01.05
  • R:19:06:39 01.05
  • А что отладчик выдает
    Александр Котляр
  • S:19:06:58 01.05
  • R:19:07:02 01.05
  • Задание задачи кинь
    Валентин Витринский
    • S:19:08:07 01.05
    • R:19:08:09 01.05
    ошибка заключается в том что при вводе большое количества элементов у меня не возвращает код возврата 100, но сортирует, а если я меньше ввожу элементов, то он выводи код возврата и сортирует, но появляется мусор
    Александр Котляр
  • S:19:08:39 01.05
  • R:19:08:44 01.05
  • Задачу саму кинь
    Валентин Витринский
    • S:19:10:35 01.05
    • R:19:10:37 01.05
    При решении каждой задачи реализуйте программу, которая принимает у пользо вателя элементы целочисленного статического массива и выполняет его обработку в соответствии с вариантом. Максимальное количество элементов, которое может ввести пользователь, равно десяти. Необходимо организовать ввод массива по концевому признаку. В качестве кон цевого признака выступает любая ошибка, которая возникает при очередном вводе значения с помощью функции scanf. Например, при вводе последовательности 1 2 3 a должен быть сформирован массив из трёх элементов со значениями 𝐴[0] = 1, 𝐴[1] = 2, 𝐴[2] = 3. В случае, если массив уже заполнен, а концевой признак ещё не наступил, ввод элементов в массив прекращается. Такое «переполнение» не считать ошибкой: про грамма должна обработать полученный массив из десяти элементов, но функция main в такой ситуации должна вернуть специальный код возврата, равный 100. Упорядочить массив по возрастанию с помощью сортировки вставками (ан гл. Insertion Sort) и вывести на экран 1.Статические массивы следует отличать от массивов переменной длины (ан гл. Variable Length Array, VLA). Во избежание случайного использования по следних при компиляции программы необходимо указывать ключ Wvla. 2. Для реализации каждой из задач этой лабораторной работы необходимо выде лить несколько осмысленных функций. Необходимо предусмотреть обработку ошибочных ситуаций. 3. Под вводом массива подразумевается, если не указано иное, ввод количества вводимых элементов и самих элементов по порядку. Ввод неверного количества элементов следует считать исключительной ситуацией. 4. Под выводом массива подразумевается вывод его элементов без указания их общего количества. 5. Ситуации, когда решение задачи не может быть получено, следует считать исключительными. Например, если нужно подсчитать количество чётных эле ментов массива, а таких элементов в массиве нет. Помните, что в случае возникновения ошибочной ситуации программа должна не только выдавать соответствующее сообщение, но и возвращать ненулевой код возврат
    Валентин Витринский
    • S:19:12:59 01.05
    • R:19:13:02 01.05
    понял?
    Александр Котляр
  • S:19:16:00 01.05
  • R:19:16:06 01.05
  • Отправил 1 вложений
    Александр Котляр
  • S:19:16:06 01.05
  • R:19:16:09 01.05
  • Щас попробую
    Валентин Витринский
    • S:19:16:40 01.05
    • R:19:16:49 01.05
    Ничего не слышу
    Валентин Витринский
    • S:19:16:41 01.05
    • R:19:16:44 01.05
    Хахахах
    Валентин Витринский
    • S:19:33:47 01.05
    • R:19:33:50 01.05
    понял?
    Александр Котляр
  • S:19:34:06 01.05
  • R:19:34:10 01.05
  • Разбираюсь
    Валентин Витринский
    • S:20:35:12 01.05
    • R:20:35:14 01.05
    ?
    Александр Котляр
  • S:20:35:32 01.05
  • R:20:35:35 01.05
  • Тут хуйня какая то пока
    Александр Котляр
  • S:20:35:37 01.05
  • R:20:35:40 01.05
  • Разбираюсь
    Валентин Витринский
    • S:20:35:46 01.05
    • R:20:35:55 01.05
    Ахахахах
    Валентин Витринский
    • S:20:35:49 01.05
    • R:20:35:52 01.05
    Согласен
    Валентин Витринский
    • S:21:12:46 01.05
    • R:21:12:49 01.05
    никак?
    Александр Котляр
  • S:21:12:56 01.05
  • R:21:12:59 01.05
  • Пока нет
    Валентин Витринский
    • S:21:13:04 01.05
    • R:21:13:06 01.05
    печально
    Александр Котляр
  • S:21:30:14 01.05
  • R:21:30:17 01.05
  • Ищи другого
    Валентин Витринский
    • S:21:30:47 01.05
    • R:21:30:50 01.05
    Я тоже ищу другого...
    Валентин Витринский
    • S:21:30:51 01.05
    • R:21:30:54 01.05
    невыносимо
    Александр Котляр
  • S:21:31:10 01.05
  • R:21:31:16 01.05
  • Что невыносимо
    Александр Котляр
  • S:21:31:25 01.05
  • R:21:31:29 01.05
  • Я не знаю пока как это сделать
    Валентин Витринский
    • S:21:31:49 01.05
    • R:21:31:51 01.05
    невоносимо, что сложная задача)
    Александр Котляр
  • S:21:33:15 01.05
  • R:21:33:18 01.05
  • #include <stdio.h> #include <stdlib.h> #define MAX_SIZE 10 void insertion_sort(int arr[], int n) { int i, j, temp; for (i = 1; i < n; i++) { temp = arr[i]; j = i - 1; while (j >= 0 && arr[j] > temp) { arr[j + 1] = arr[j]; j--; } arr[j + 1] = temp; } } int main() { int arr[MAX_SIZE]; int n = 0; int retval = 0; printf(*Enter array elements (press any non-digit to stop):\n*); while (n < MAX_SIZE) { if (scanf(*%d*, &arr[n]) != 1) { break; } n++; } if (n == MAX_SIZE) { retval = 100; } insertion_sort(arr, n); printf(*Sorted array: *); for (int i = 0; i < n; i++) { printf(*%d *, arr[i]); } printf(*\n*); return retval; }
    Александр Котляр
  • S:21:33:22 01.05
  • R:21:33:26 01.05
  • Попробуй у себя
    Александр Котляр
  • S:21:35:57 01.05
  • R:21:36:03 01.05
  • #include <stdio.h> #define N 10 #define GOOD 0 #define ERROR_IO 1 #define ERROR_N 2 #define END_OF_INPUT 100 int input_an_array(int arr[], size_t n) { int value; int i = 0; while (i < n) { if (scanf(*%d*, &value) != 1) { // Если произошла ошибка ввода, выходим из цикла break; } arr[i++] = value; } return i < n ? GOOD : END_OF_INPUT; } void insertion_sort(int arr[], int n) { int i, j, key; for (i = 1; i < n; i++) { key = arr[i]; j = i - 1; while (j >= 0 && arr[j] > key) { arr[j + 1] = arr[j]; j = j - 1; } arr[j + 1] = key; } } void output_array(int arr[], size_t n) { for (int i = 0; i < n; i++) { printf(*%d *, arr[i]); } printf(*\n*); } int main() { int arr[N]; printf(*Enter array elements:\n*); int input_result = input_an_array(arr, N); if (input_result == END_OF_INPUT) { printf(*End of input. Sorted array:\n*); } else { printf(*Sorted array:\n*); } int n = input_result == END_OF_INPUT ? N : input_result; insertion_sort(arr, n); output_array(arr, n); return input_result; }
    Александр Котляр
  • S:21:36:08 01.05
  • R:21:36:12 01.05
  • Вот это попробуй
    Валентин Витринский
    • S:21:36:31 01.05
    • R:21:36:34 01.05
    да емаё
    Валентин Витринский
    • S:21:36:36 01.05
    • R:21:36:38 01.05
    только отредачил
    Валентин Витринский
    • S:21:36:37 01.05
    • R:21:36:40 01.05
    ахахахах
    Александр Котляр
  • S:21:36:55 01.05
  • R:21:37:00 01.05
  • Ну че ?
    Валентин Витринский
    • S:21:38:30 01.05
    • R:21:38:32 01.05
    первый работает
    Александр Котляр
  • S:21:38:51 01.05
  • R:21:38:56 01.05
  • Так как надо ?
    Валентин Витринский
    • S:21:40:34 01.05
    • R:21:40:36 01.05
    да
    Александр Котляр
  • S:21:40:52 01.05
  • R:21:40:56 01.05
  • А 2 ?
    Валентин Витринский
    • S:21:40:54 01.05
    • R:21:40:56 01.05
    ты можешь мне зип файл отправить?
    Валентин Витринский
    • S:21:41:01 01.05
    • R:21:41:04 01.05
    2
    Александр Котляр
  • S:21:41:02 01.05
  • R:21:41:05 01.05
  • Не
    Александр Котляр
  • S:21:41:27 01.05
  • R:21:41:32 01.05
  • Так первый или второй работают
    Александр Котляр
  • S:21:41:30 01.05
  • R:21:41:35 01.05
  • ?
    Александр Котляр
  • S:21:41:40 01.05
  • R:21:41:44 01.05
  • Я уже стер код ?
    Валентин Витринский
    • S:21:42:03 01.05
    • R:21:42:05 01.05
    первый работает
    Валентин Витринский
    • S:21:42:10 01.05
    • R:21:42:12 01.05
    смотрю второй
    Валентин Витринский
    • S:21:45:34 01.05
    • R:21:45:36 01.05
    Отправил 1 вложений
    Валентин Витринский
    • S:21:45:55 01.05
    • R:21:45:58 01.05
    во втором случае не работает сортировка
    Валентин Витринский
    • S:21:47:34 01.05
    • R:21:47:36 01.05
    ну значение он возвращает правильно
    Валентин Витринский
    • S:21:47:38 01.05
    • R:21:47:41 01.05
    а вот ответ
    Валентин Витринский
    • S:21:47:40 01.05
    • R:21:47:42 01.05
    нет
    Александр Котляр
  • S:21:50:46 01.05
  • R:21:50:50 01.05
  • странно
    Александр Котляр
  • S:21:50:53 01.05
  • R:21:50:58 01.05
  • #include <stdio.h> #define N 10 #define GOOD 0 #define ERROR_IO 1 #define ERROR_N 2 #define END_OF_INPUT 100 int input_an_array(int arr[], size_t n) { int value; int i = 0; while (i < n) { if (scanf(*%d*, &value) != 1) { // Если произошла ошибка ввода, выходим из цикла break; } arr[i++] = value; } return i < n ? GOOD : END_OF_INPUT; } void insertion_sort(int arr[], int n) { int i, j, temp; for (i = 1; i < n; i++) { temp = arr[i]; j = i - 1; while (j >= 0 && arr[j] > temp) { arr[j + 1] = arr[j]; j--; } arr[j + 1] = temp; } } void output_array(int arr[], size_t n) { for (int i = 0; i < n; i++) { printf(*%d *, arr[i]); } printf(*\n*); } int main() { int arr[N]; printf(*Enter array elements:\n*); int input_result = input_an_array(arr, N); if (input_result == END_OF_INPUT) { printf(*End of input. Sorted array:\n*); } else { printf(*Sorted array:\n*); } int n = input_result == END_OF_INPUT ? N : input_result; insertion_sort(arr, n); output_array(arr, n); return input_result; }
    Александр Котляр
  • S:21:50:57 01.05
  • R:21:51:01 01.05
  • а так
    Валентин Витринский
    • S:21:54:55 01.05
    • R:21:54:57 01.05
    всё равно не отображается
    Александр Котляр
  • S:21:55:19 01.05
  • R:21:55:23 01.05
  • странно
    Валентин Витринский
    • S:22:03:20 01.05
    • R:22:03:23 01.05
    короче
    Валентин Витринский
    • S:22:03:24 01.05
    • R:22:03:25 01.05
    есть идея
    Валентин Витринский
    • S:22:03:52 01.05
    • R:22:03:54 01.05
    if (scanf(*%d*, &value) != 1) { // вот тут пересоздавать массив return END_OF_INPUT; // Обрываем ввод при любой ошибке ввода } arr[i] = value;
    Валентин Витринский
    • S:22:04:11 01.05
    • R:22:04:13 01.05
    это ещё мой старый код
    Валентин Витринский
    • S:22:05:57 01.05
    • R:22:05:59 01.05
    как идея?
    Валентин Витринский
    • S:22:07:17 01.05
    • R:22:07:20 01.05
    м?
    Валентин Витринский
    • S:22:09:34 01.05
    • R:22:09:36 01.05
    ты тут
    Александр Котляр
  • S:22:10:23 01.05
  • R:22:10:27 01.05
  • пробуй
    Валентин Витринский
    • S:22:22:45 01.05
    • R:22:22:47 01.05
    нет
    Валентин Витринский
    • S:22:22:49 01.05
    • R:22:22:51 01.05
    не получилось
    Валентин Витринский
    • S:22:22:55 01.05
    • R:22:22:57 01.05
    а у тебя как?
    Александр Котляр
  • S:22:24:48 01.05
  • R:22:24:51 01.05
  • хз что придумать
    Валентин Витринский
    • S:23:12:31 01.05
    • R:23:12:33 01.05
    не придумал?
    Александр Котляр
  • S:23:13:20 01.05
  • R:23:13:24 01.05
  • Нет
    Александр Котляр
  • S:23:13:35 01.05
  • R:23:13:38 01.05
  • Завтра че нить придумаю
    Валентин Витринский
    • S:01:22:47 02.05
    • R:01:22:49 02.05
    Короче
    Валентин Витринский
    • S:01:22:51 02.05
    • R:01:22:53 02.05
    Я решил
    Александр Котляр
  • S:01:25:04 02.05
  • R:01:25:08 02.05
  • И как
    Александр Котляр
  • S:01:25:12 02.05
  • R:01:25:17 02.05
  • ???
    Александр Котляр
  • S:01:25:42 02.05
  • R:01:25:45 02.05
  • За попытку помочь кинь 300 на 89852952650
    Валентин Витринский
    • S:01:25:53 02.05
    • R:01:25:55 02.05
    int input_an_array(int arr[], int *actual_size) { int value; *actual_size = 0; for (int i = 0; i <= N; i++) { if (scanf(*%d*, &value) != 1) return GOOD; if (*actual_size == N) return END_OF_INPUT; arr[*actual_size] = value; (*actual_size)++; } return GOOD; } void insertion_sort(int arr[], int n) { for (int i = 1; i < n; i++) { int key = arr[i]; int j = i - 1; while (j >= 0 && arr[j] > key) { arr[j + 1] = arr[j]; j = j - 1; } arr[j + 1] = key; } } void output_array(int arr[], int n) { for (int i = 0; i < n; i++) { printf(*%d *, arr[i]); } printf(*\n*); } int main() { int arr[N], actual_size; printf(*Enter array elements:\n*); int input_result = input_an_array(arr, &actual_size); if (input_result == END_OF_INPUT) { printf(*End of input detected before array was fully populated.\n*); } printf(*Sorted array:\n*); insertion_sort(arr, actual_size); output_array(arr, actual_size); return input_result == END_OF_INPUT ? END_OF_INPUT : GOOD; }
    Александр Котляр
  • S:01:26:07 02.05
  • R:01:26:10 02.05
  • Норм
    Валентин Витринский
    • S:01:26:13 02.05
    • R:01:26:15 02.05
    ты измени только стоимость
    Александр Котляр
  • S:01:26:18 02.05
  • R:01:26:26 02.05
  • Ок ?
    Александр Котляр
  • S:01:26:26 02.05
  • R:01:26:31 02.05
  • Не надо ниче менять
    Валентин Витринский
    • S:01:26:30 02.05
    • R:01:26:32 02.05
    да
    Валентин Витринский
    • S:01:26:38 02.05
    • R:01:26:41 02.05
    а
    Александр Котляр
  • S:01:26:40 02.05
  • R:01:26:43 02.05
  • Ты меня исполнителем не выбирал
    Валентин Витринский
    • S:01:26:41 02.05
    • R:01:26:42 02.05
    хорошо
    SYSTEM
  • S:01:26:48 02.05
  • R:01:26:51 02.05
  • Александр Котляр выбрал исполнителем Валентин Витринский
    Александр Котляр
  • S:01:26:54 02.05
  • R:01:26:58 02.05
  • Чисто консультацию взял
    Александр Котляр
  • S:01:27:02 02.05
  • R:01:27:06 02.05
  • Не надо было выбирать
    Валентин Витринский
    • S:01:27:14 02.05
    • R:01:27:16 02.05
    а
    Валентин Витринский
    • S:01:27:20 02.05
    • R:01:27:22 02.05
    а теперь шо
    Валентин Витринский
    • S:01:27:23 02.05
    • R:01:27:26 02.05
    ахахахах
    Александр Котляр
  • S:01:27:27 02.05
  • R:01:27:32 02.05
  • Ниче
    Александр Котляр
  • S:01:27:36 02.05
  • R:01:27:41 02.05
  • 0
    Александр Котляр
  • S:01:27:42 02.05
  • R:01:27:46 02.05
  • Исполнитель изменил стоимость. Новое значение: 1 ₽
    Валентин Витринский
    • S:01:27:45 02.05
    • R:01:27:47 02.05
    всм
    SYSTEM
  • S:01:27:55 02.05
  • R:01:28:00 02.05
  • Валентин Витринский отправил решение Александр Котляр
    Александр Котляр
  • S:01:28:00 02.05
  • R:01:28:03 02.05
  • В прямом
    Александр Котляр
  • S:01:28:09 02.05
  • R:01:28:13 02.05
  • Не было никакого заказа
    Валентин Витринский
    • S:01:28:28 02.05
    • R:01:28:30 02.05
    понял
    Александр Котляр
  • S:01:28:35 02.05
  • R:01:28:39 02.05
  • 89852952650
    Александр Котляр
  • S:01:28:44 02.05
  • R:01:28:46 02.05
  • Напиши в тг по этому номеру
    Александр Котляр
  • S:01:28:57 02.05
  • R:01:29:02 02.05
  • Щас обьясню
    Валентин Витринский
    • S:01:29:01 02.05
    • R:01:29:03 02.05
    ща
    Александр Котляр
  • S:01:30:02 02.05
  • R:01:30:06 02.05
  • И где
    Александр Котляр
  • S:01:30:05 02.05
  • R:01:30:09 02.05
  • ?
    Александр Котляр
  • S:19:42:57 02.05
  • R:19:43:02 02.05
  • Исполнитель изменил стоимость. Новое значение: 300 ₽
    SYSTEM
  • S:19:43:04 02.05
  • R:19:43:09 02.05
  • Валентин Витринский отправил решение Александр Котляр
      • USER
      • 300.0

        /

        300.0

      • EXEC
      • 240.0

        /

        240.0

        

    Сбер

       

    Тинькофф