Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 8 общая

Помогите с кодом новичку (

Помогите с кодом новичку (
Я
   Gorbach
 
02.11.18 - 10:08
Помогите плиз 


a.   Создаем и заполняем массив, элементом которого является структура вида
i.   День недели – (понедельник  - воскресенье)
ii.   День месяца - (1- Количество дней в месяце)
iii.   Количество мороженное
b.   Выводим на экран данные из массива в формате «День месяца день недели: колво мороженное».
2.
По кнопке:
a.   Выводим информацию из собранного ранее массива, сколько раз прием выпадает на будни и общую сумму принятого мороженное в будни.
b.   Выводим информацию из собранного ранее массива, сколько раз прием выпадает на выходные и общую сумму принятого мороженное в выходные.
c.   Выводим количество суббот в месяце.
 
 
   Волшебник
 
1 - 02.11.18 - 10:11
Задание при приёме на работу? Как же ты дальше работать будешь?
   Волшебник
 
2 - 02.11.18 - 10:12
слово "мороженое" пишется с одной "н"
   DrWatson
 
3 - 02.11.18 - 10:13
А в чем вопрос? Весь код написать?
   DrWatson
 
4 - 02.11.18 - 10:16
Всё что нужно для выполнения этого задания есть в контекст-помощнике 1С. Разве что только надо знать, что есть переменные, циклы, условия, массивы, структуры.
   craxx
 
5 - 02.11.18 - 10:16
(2) человек ясно не русский, ибо не склоняет слово "мороженое", и пишет его с ошибкой
(1) судя по всему, задание на контрольную для студента
   DrWatson
 
6 - 02.11.18 - 10:16
(4) синтаксис-помощник
   tgu82
 
7 - 02.11.18 - 10:22
Можно ведь и через таблицу значений. Зачем именно структура да еще и массив?
   Gorbach
 
8 - 02.11.18 - 10:25
Студент
Такое вот задание, именно с массивом
не получается
   Волшебник
 
9 - 02.11.18 - 10:26
(8) Учись, студент, учись.
   Cool_Profi
 
10 - 02.11.18 - 10:26
(5) А может, у него мороженное мясо?
 
 Рекламное место пустует
   Малыш Джон
 
11 - 02.11.18 - 10:27
(0) а что не получается-то?
   Gorbach
 
12 - 02.11.18 - 10:30
Как массив правильно заполнить?
   Волшебник
 
13 - 02.11.18 - 10:31
(10) Всё может быть. Мы же не знаем, что придёт в голову безумному профессору.
   Gorbach
 
14 - 02.11.18 - 10:31
Ну или дайте ссыль где почитать, не понял тему
   ejikbeznojek
 
15 - 02.11.18 - 10:33
(11) Вот ты задаёшь ему такие вопросы, а потом вот такие темы появляются))
Все ли 1С-ники самовлюбленны и высокомерны?

(12)
Если нужно заполнить чем нибудь.
То создаёшь массив, и в цикле заполняешь его структурами
   Митяйский
 
16 - 02.11.18 - 10:33
(14) выдели в конфигураторе слово Массив в твоем коде и нажми ctrl+f1

все что можно сделать с твоим массивом, будет там перечислено
   ejikbeznojek
 
17 - 02.11.18 - 10:35
(14) https://helpme1c.ru/massivy-v-yazyke-1s-8-v-primerax
Вот первая попавшаяся ссылка)

Отдельно нагугли ещё про структуры и соедини 2 знания в 1 цикл))
   Пробел
 
18 - 02.11.18 - 10:59
(12) Для начала Вам нужно понять что такое массив и что такое структура.

Самая простая структура - это пара из ключа и значения. В Вашем случае:

ЭлементМассива = Новый Структура;
ЭлементМассива.Добавить("ДеньНедели", "Четверг");

Удобство структуры в том что по ключу можно получить значение:

ПервыйДеньЗапоя = ЭлементМассива.ДеньНедели;

В переменной ПервыйДеньЗапоя будет значение "Четверг".

Значение может быть любым. То есть в строчке "ЭлементМассива.Добавить()" вместо "Четверг" может быть число, ссылка, дата, другая структура...

С массивом все еще проще. Это последовательность значений, к которым можно получить доступ по порядковому номеру (индексу) в последовательности. Значения тоже могут быть любыми.

Масс = Новый Массив;
Масс.Добавить(ЭлементМассива1);
Масс.Добавить(ЭлементМассива2);

и так далее.Потом 

элемент1 = Масс[0];
элемент2 = Масс[1];
   Gorbach
 
19 - 02.11.18 - 11:24
(18) То есть примерно так?
Для Каждого ЭлементМассива Из МассивМороженного Цикл
        ЭлементМассива = Новый Структура;
        ЭлементМассива.Добавить("ДеньНедели", "Четверг");
        ЭлементМассива.Добавить("ДеньМесяца", "4");
        Если чслСч%7 = 0 ИЛИ чслСч%7 = 6 Тогда 
        ЭлементМассива.Добавить("Мороженое",чслМороженоеВВыходные);
    Иначе 
        ЭлементМассива.Добавить("Мороженое", чслМороженоеВБудни);
    КонецЦикла;
   Ёпрст
 
20 - 02.11.18 - 11:31
(19) проще делать цикл по дате, и потом из функции формат получать свои четверги и пятницы

Формат(ТекущаяДата(),"ДФ=дддд") = "пятница"
   Пробел
 
21 - 02.11.18 - 11:38
(19) можно и так.

А вообще, если следовать букве задачи, Вам просто нужно создать массив и заполнить его несколькими структурами со случайными данными. Количество структур и значения в них Вы выбираете сами случайным образом, учитывая указания в задаче.

То есть нет никакого смысла переусложнять циклами.

МассивМороженного = Новый Массив;

ЭлементМассива1 = Новый Структура;
ЭлементМассива1.Добавить("ДеньНедели", %СлучайныйДень%);
ЭлементМассива1.Добавить("ДеньМесяца", %СлучайнаяЦифра%);       ЭлементМассива1.Добавить("Мороженое",%СлучайнаяЦифра%);

МассивМороженного.Добавить(ЭлементМассива1);

ЭлементМассива2 = Новый Структура;  

и так далее.
   Пробел
 
22 - 02.11.18 - 11:41
Основное веселье у Вас будет с алгоритмами кнопок во второй части :)
   Ёпрст
 
23 - 02.11.18 - 11:41
(21) не угадал:
>>> Выводим количество суббот в месяце.
   Ёпрст
 
24 - 02.11.18 - 11:41
ему нужны все даты с некоего диапазона
   bolder
 
25 - 02.11.18 - 11:42
(21) И как потом из этого получить кол-во суббот))Пятница штоле?))
   VladZ
 
26 - 02.11.18 - 11:43
(0) Зачем тебе это? Одумайся!!! Потом будет поздно...
   Пробел
 
27 - 02.11.18 - 11:47
(24) Похоже Вы правы, я сначала решил что в скобках приведены примеры значений а не их диапазон.
   Gorbach
 
28 - 04.11.18 - 11:11
Ребят, у меня вроде бы получилась 1 часть 
Спасибо за подсказки
Думаю, что лучше спросить, чем сидеть и не знать

 МассивМяса= Новый Массив;
     
    
//заполняем массив стуктурами

   Для Счетчик =  Счетчик1 по чслКоличестовДней Цикл
      //Структура

      
      НашаСтруктура = Новый Структура("ДеньНедели,ДеньМесяца,КоличествоМяса");
      
      НашаСтруктура.ДеньНедели = Формат(ТекДата,"ДФ=dddd");  // выведем дни недели

      ТекДата = ТекДата + ОдинДень*чслПериодПриема;
      
      НашаСтруктура.ДеньМесяца = Счетчик + 1;
      
  Если НашаСтруктура.ДеньНедели = "суббота" ИЛИ  НашаСтруктура.ДеньНедели = "воскресенье" Тогда
      НашаСтруктура.КоличествоМяса = чслМясаВВыходные;
      
  Иначе
      НашаСтруктура.КоличествоМяса = чслМясаВБудни;
  КонецЕсли;
  
// добавляем стуктуру в массив      

      МассивМяса.Добавить(НашаСтруктура);
      Счетчик = Счетчик + 1;
  КонецЦикла;

// Вывод массива


Для каждого Стр Из МассивМяса Цикл
      Сообщить(" " + (Стр.ДеньМесяца)+ " " +(Стр.ДеньНедели) + ":"+ (Стр.КоличествоМяса));     
     
  КонецЦикла;
   Gorbach
 
29 - 04.11.18 - 11:16
Подскажите, правильное ли направление для 2 части задачи?

тзМясо = Новый ТаблицаЗначений;

//добавим данные приним Мясо в вых

 
    тзМясо.Колонки.Добавить("МясоВых");
    тзМясо.Колонки.Добавить("МясоБудни");
    
    новЭлемент = тзМясо.Добавить();
Если НашаСтруктура.ДеньНедели = "суббота" ИЛИ  НашаСтруктура.ДеньНедели = "воскресенье" Тогда
    Для Каждого ЭлМассива Из  МассивМясо Цикл
               новЭлемент = тзМясо.Добавить();

Если ЭлМассива  =  чслМясоВВыходные Тогда
                            новЭлемент.МясоВых = чслМясоВВыходные;
                        
                    ИначеЕсли     ЭлМассива =  чслМясоВБудни Тогда
                        новЭлемент.МясонБудни = чслМясоВБудни;
                            
                КонецЕсли; 
                
         КонецЦикла;
         
Сообщить(тзМясо.Итог("МясоВых"));


Список тем форума
Рекламное место пустует  Рекламное место пустует
Читай всё полезное и впитывай, а нападки игнорируй. Здесь так принято. aka AMIGO
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует