Показано с 1 по 10 из 138

Тема: IntraSCADA

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,620

    По умолчанию

    на javasript написаны милиарды строк кода, там вкуривать уже не надо, достаточно задать вопрос ИИ и вот ответ
    Для решения задачи расчета средней температуры с учетом возможного отсутствия данных с некоторых датчиков, можно использовать следующий подход:
    Код:
    // Создаем массив с данными датчиков
    // null означает, что датчик не работает
    const sensors = [22.5, null, 24.3, 23.1];
    
    // Функция для расчета средней температуры
    function calculateAverageTemperature(sensors) {
        // Фильтруем массив, оставляя только валидные значения
        const validTemperatures = sensors.filter(temp => temp !== null && temp !== undefined);
        
        // Проверяем, есть ли хотя бы один работающий датчик
        if (validTemperatures.length === 0) {
            throw new Error('Нет работающих датчиков');
        }
        
        // Считаем сумму всех валидных температур
        const sum = validTemperatures.reduce((accumulator, currentValue) => accumulator + currentValue, 0);
        
        // Вычисляем среднее значение
        const average = sum / validTemperatures.length;
        
        return average;
    }
    
    try {
        const averageTemperature = calculateAverageTemperature(sensors);
        console.log(`Средняя температура: ${averageTemperature.toFixed(2)}°C`);
    } catch (error) {
        console.error(error.message);
    }
    Как это работает:

    Массив датчиков содержит значения температур, где null означает нерабочий датчик.

    Метод filter удаляет все null и undefined значения, оставляя только валидные температуры.

    Метод reduce суммирует все валидные значения.

    Деление происходит на количество валидных значений, которое автоматически определяется.

    Преимущества такого подхода:

    Гибкость: количество датчиков может меняться

    Надежность: автоматически игнорирует нерабочие датчики

    Ошибка обработки: выбрасывает ошибку, если все датчики не работают

    Точность: результат округляется до двух знаков после запятой

    Вы можете легко модифицировать этот код, добавив дополнительные проверки или изменяя способ обработки ошибок в зависимости от ваших требований.
    для пользователя остается только адаптировать предложенный вариант и отладить на предмет ошибок
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  2. #2

    По умолчанию

    Вы совершенно правы. Наши интеграторы используют ИИ для написания нетривиальных скриптов, конечно при наличии базовых знаний js. А некоторые наши разработчики используют ИИ для решения сложных задач по развитию системы. Особенно в этом плане интересен grok.

  3. #3

    По умолчанию

    Спасибо capzap за знакомство с умным "пареньком" ))
    ИИ, это сила!!!
    ...но и melky тогда прав в плане "готового продукта" за полтора ляма и последующего времени на "допилы" в купе с ИИ
    Согласитесь, если сказано что "уневерсальный" и я его купил, то там должно быть всё, как в МастерСкада или Кодесюс...
    И это еще повезёт если есть Ведущий типа Владимера который может послать в нужном направлении, на которое к стати тоже нужно время, а вот с ним всегда на производстве туговато увы!

    Спасибо всем парни! Не сердитесь и давайте жить дружно!!!

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •