Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
27 Май 2018, 00:42
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Помогите, пожалуйста, высчитать средний балл  (Прочитано 3512 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Willy Moon

  • *
  • Сообщений: 7
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-12
  • Сайт: 
  • Профессия: Ученик 1С
Добрый день, Дамы и Господа.
Есть документ "Текущая успеваемость", в который выставляются оценки студентов. Т.е как журнал. Можно ли сделать так, чтобы он высчитывал среднюю оценку в строке? Нужно сделать так, чтобы брал оценки только из заполненных полей, иначе средний бал получается неверным.


Оффлайн Rasty

  • *****
  • Сообщений: 997
  • РЕПУТАЦИЯ: 141
  • КПД: 14%
  • Регистрация: 2015-03-25
    • Skype: alex1cbit
  • Сайт: 
  • Профессия: Программист 1С
1. Получить реквизиты табличной части
2. берем строку проверяем на заполненное значение
3. если значение заполнено плюсуем его в переменную прибавляем к счетчику + 1
Добавлено: 29 Май 2015, 18:48

Ну или вот вам прям готовый код
Счетчик = 0;
Оценка = 0;
n=31;
Для Кажодго Стр Из ВашаТабличнаяЧасть Цикл
    Попытка
        Для i=1 по n Цикл
            Если ЗначениеЗаполнено(Стр[i]) Тогда
                Оценка = Оценка + Стр[i];
                Счетчик = Счетчик + 1;
            КонецЕсли;
        КонецЦикла;
    Исключение
        Стр.СреднийБалл = Оценка/Счетчик;
    КонецПопытки;
КонецЦикла;

Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

Последний раз редактировалось: Rasty; 29 Май 2015, 18:48. Причина: Объединение сообщений

Оффлайн Willy Moon

  • *
  • Сообщений: 7
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-12
  • Сайт: 
  • Профессия: Ученик 1С
1. Получить реквизиты табличной части
2. берем строку проверяем на заполненное значение
3. если значение заполнено плюсуем его в переменную прибавляем к счетчику + 1
Добавлено: 29 Май 2015, 18:48

Ну или вот вам прям готовый код
Счетчик = 0;
Оценка = 0;
n=31;
Для Кажодго Стр Из ВашаТабличнаяЧасть Цикл
    Попытка
        Для i=1 по n Цикл
            Если ЗначениеЗаполнено(Стр[i]) Тогда
                Оценка = Оценка + Стр[i];
                Счетчик = Счетчик + 1;
            КонецЕсли;
        КонецЦикла;
    Исключение
        Стр.СреднийБалл = Оценка/Счетчик;
    КонецПопытки;
КонецЦикла;

Премного благодарен, сейчас попробую :)

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Rasty,

Если ЗначениеЗаполнено(Стр[i]) Тогда

кто так обращается к каждой отдельной ячейке строки?!
и еще.
в каком случае 1Ска попадет в ветку "Исключение..."?
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Willy Moon

  • *
  • Сообщений: 7
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-12
  • Сайт: 
  • Профессия: Ученик 1С
Ну или вот вам прям готовый код
Счетчик = 0;
Оценка = 0;
n=31;
Для Кажодго Стр Из ВашаТабличнаяЧасть Цикл
    Попытка
        Для i=1 по n Цикл
            Если ЗначениеЗаполнено(Стр[i]) Тогда
                Оценка = Оценка + Стр[i];
                Счетчик = Счетчик + 1;
            КонецЕсли;
        КонецЦикла;
    Исключение
        Стр.СреднийБалл = Оценка/Счетчик;
    КонецПопытки;
КонецЦикла;


Данный код не работает. Выдается ошибка "Деление на 0", т.е. цикл не работает и счетчик не меняет свое значение :(

Оффлайн Дмитрий@

  • *****
  • Сообщений: 759
  • РЕПУТАЦИЯ: 138
  • КПД: 18%
  • Регистрация: 2015-02-27
  • Сайт: 
  • Профессия: Программист 1С
n должно быть равно 32, потому что столько дней нет в месяце.
Счетчик должен обновляться (=0) в каждом цикле.
И поскольку присутствует деление должна быть проверка на ноль.

Счетчик = 0;
Оценка = 0;
n=32;
Для Кажодго Стр Из ВашаТабличнаяЧасть Цикл
    Попытка
        Счетчик = 0;
        Для i=1 по n Цикл
            Если ЗначениеЗаполнено(Стр[i]) Тогда
                Оценка = Оценка + Стр[i];
                Счетчик = Счетчик + 1;
            КонецЕсли;
        КонецЦикла;
    Исключение
        Если Счетчик <> 0 Тогда
        Стр.СреднийБалл = Оценка/Счетчик;
        Иначе
        Стр.СреднийБал = 0;
        КонецЕсли;
    КонецПопытки;
КонецЦикла;

Оффлайн temrmal

  • ***
  • Сообщений: 132
  • РЕПУТАЦИЯ: 15
  • КПД: 11%
  • Регистрация: 2011-11-10
  • Сайт: 
  • Профессия: Программист 8.1
Конечно ошибка. При первом же цикле исключение срабатывает, а счетчик в этом случае равен 0

Оффлайн Willy Moon

  • *
  • Сообщений: 7
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-12
  • Сайт: 
  • Профессия: Ученик 1С
Конечно ошибка. При первом же цикле исключение срабатывает, а счетчик в этом случае равен 0
А как реализовать, чтобы это работало?

Оффлайн Дмитрий@

  • *****
  • Сообщений: 759
  • РЕПУТАЦИЯ: 138
  • КПД: 18%
  • Регистрация: 2015-02-27
  • Сайт: 
  • Профессия: Программист 1С
Цитировать
А как реализовать, чтобы это работало?
Тот код который я кинул в предыдущем сообщении, он что не работает?

Оффлайн Willy Moon

  • *
  • Сообщений: 7
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-12
  • Сайт: 
  • Профессия: Ученик 1С
Тот код который я кинул в предыдущем сообщении, он что не работает?
К сожалению, нет :(


Теги:
 

Помогите срочно!! В вкладке "Сервис"--> "Журнал регистрации" отражаются все операции как можно определить сделаны ли операции "задним числом" и как вычислить первоначальную информацию какой расчет поменял на другой?

Автор 2ronРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 4684
Последний ответ 24 Дек 2015, 15:34
от дфтын
Помогите подобрать Back-office и Front-office

Автор avrnskРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 5953
Последний ответ 07 Сен 2010, 12:01
от mohock
Помогите с отчётами в УТ 10.3. (Ведомость по товарам и ведомость по заказам)

Автор chum710Раздел Пользователям "1С - Предприятие 8"

Ответов: 2
Просмотров: 6281
Последний ответ 28 Мар 2012, 13:02
от chum710
Помогите с отчетом "Валовая прибыль"

Автор Dm109Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 5104
Последний ответ 10 Сен 2015, 13:57
от Dm109
помогите с отчетом "характеристики контрагентов"

Автор Vasya PovarРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 2221
Последний ответ 07 Дек 2016, 15:53
от Kironten

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
154 Сообщений
alex0402
67 Сообщений
oleg-x
56 Сообщений
AIFrame AIFrame
50 Сообщений
buketov.av buketov.av
47 Сообщений
wise wise
41 Сообщений
ilyay ilyay
39 Сообщений
Анюта17
33 Сообщений
Alter
32 Сообщений
KOI8-R
30 Сообщений

* Кто онлайн

  • Точка Гостей: 178
  • Точка Скрытых: 0
  • Точка Пользователей: 1
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal