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

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

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

Оффлайн Willy Moon

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


Оффлайн Rasty

  • *****
  • Сообщений: 989
  • РЕПУТАЦИЯ: 139
  • КПД: 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", т.е. цикл не работает и счетчик не меняет свое значение :(

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

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

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

Онлайн temrmal

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

Оффлайн Willy Moon

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

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

  • *****
  • Сообщений: 735
  • РЕПУТАЦИЯ: 134
  • КПД: 18%
  • Ссылка на примеры работ https://yadi.sk/d/ksVluPMB
  • Регистрация: 2015-02-27
    • Skype: ShuplecovDima
  • Сайт: 
  • Профессия: Программист 1С
Цитировать
А как реализовать, чтобы это работало?
Тот код который я кинул в предыдущем сообщении, он что не работает?
Ссылка на примеры работ https://yadi.sk/d/ksVluPMB

Оффлайн Willy Moon

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


Теги:
 

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
177 Сообщений
ilyay ilyay
69 Сообщений
oleg-x
48 Сообщений
AIFrame
45 Сообщений
alex0402
44 Сообщений
andron81_81
38 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
Golickoff Golickoff
31 Сообщений
BuhRust
30 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal