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

Автор Тема: Помогите пожалуйста Массивы 1с  (Прочитано 5290 раз)

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

Оффлайн s.freak

  • *
  • Сообщений: 5
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-01-27
  • Сайт: 
  • Профессия: Ученик 1С
Задача №1.
У вас есть неосортированный массив чисел {4,10,1,22,3,44,2,5}. Необходимо написать функцию  которая произведет сортировку массива и вернет отсортированый массив.
Задача №2.
У вас есть отсортированный массив {1,3,5,6,7,8,10,13,14,15,20}. Необходимо написать процедуру которая по передаваемому числу – возвращает позицию этого числа в массиве.



помогите пожалуйста,решается вопрос трудоустройства и обучения стажером.
Сам чесал репу. Не нашел типовых задач  ни у Радченко ни у Чистова.
Знаю что азы и база,но в книге этого нет,заранее спасибо
 B)


Оффлайн sadovod

  • ****
  • Сообщений: 289
  • РЕПУТАЦИЯ: 53
  • КПД: 18%
  • Регистрация: 2012-02-19
  • Сайт: 
  • Профессия: Программист 1С
По задаче №1. Предполагаю, что цель задачи - использовать встроенные методы платформы, а не какой-нибудь пузырьковый алгоритм сортировки.
Не думаю, что это - оптимальный вариант, но для вечера пятницы, думаю, сойдёт :)
Функция ВернутьОтсортированныйМассив()
  Массив = Новый Массив;
  Массив.Добавить(4);
  Массив.Добавить(10);
  Массив.Добавить(1);
  Массив.Добавить(22);
  Массив.Добавить(3);
  Массив.Добавить(44);
  Массив.Добавить(2);
  Массив.Добавить(5);
   
  тз = Новый ТаблицаЗначений;
  тз.Колонки.Добавить("Число");
  Для каждого элемент Из Массив Цикл
   новая_строка = тз.Добавить();
   новая_строка.Число = элемент;
  КонецЦикла;
  тз.Сортировать("Число");

  Возврат тз.ВыгрузитьКолонку("Число");

КонецФункции

Оффлайн s.freak

  • *
  • Сообщений: 5
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-01-27
  • Сайт: 
  • Профессия: Ученик 1С
Премного благодарен, а 2 задача?)

Просвятите новичка,насколько данная задача (сложность) уместна для стажера в 1с ?
или она более уместна для практикующего программиста?:)
Добавлено: 08 Мар 2013, 19:38

Задачу 2 решил,но возможно коряво :xfbnsdfb:

Цитировать
Процедура ВозвратЗнач()
Массив = Новый Массив;
Массив.Добавить(1);
Массив.Добавить(3);
Массив.Добавить(5);
Массив.Добавить(6);
Массив.Добавить(7);
Массив.Добавить(8);
Массив.Добавить(10);
Массив.Добавить(13);
Массив.Добавить(14);
Массив.Добавить(15);
Массив.Добавить(20);

Если
X = ТипЗнч(ЭлементМассива)
Тогда
Массив.Элемент.Найти(Число);

Возврат;

КонецПроцедуры

Что не так сделал?<_<

Последний раз редактировалось: s.freak; 08 Мар 2013, 19:38. Причина: Объединение сообщений

Оффлайн SlazZy

  • ***
  • Сообщений: 149
  • РЕПУТАЦИЯ: 15
  • КПД: 10%
  • Регистрация: 2012-04-28
  • Сайт: 
  • Профессия: Программист 1С
Премного благодарен, а 2 задача?)

Просвятите новичка,насколько данная задача (сложность) уместна для стажера в 1с ?
или она более уместна для практикующего программиста?:)
Добавлено: 08 Мар 2013, 19:38

Задачу 2 решил,но возможно коряво :xfbnsdfb:

Цитировать
Процедура ВозвратЗнач()
Массив = Новый Массив;
Массив.Добавить(1);
Массив.Добавить(3);
Массив.Добавить(5);
Массив.Добавить(6);
Массив.Добавить(7);
Массив.Добавить(8);
Массив.Добавить(10);
Массив.Добавить(13);
Массив.Добавить(14);
Массив.Добавить(15);
Массив.Добавить(20);

Если
X = ТипЗнч(ЭлементМассива)
Тогда
Массив.Элемент.Найти(Число);

Возврат;

КонецПроцедуры

Что не так сделал?<_<

Да в общем-то вообще не совсем понятно что вы сделали :))

Процедура ВозвратЗнач()
Массив = Новый Массив;
Массив.Добавить(1);
Массив.Добавить(3);
Массив.Добавить(5);
Массив.Добавить(6);
Массив.Добавить(7);
Массив.Добавить(8);
Массив.Добавить(10);
Массив.Добавить(13);
Массив.Добавить(14);
Массив.Добавить(15);
Массив.Добавить(20);

Сообщить(Массив.Найти(Число)+1);  //возвращает индекс, а он начинается с нуля.

КонецПроцедуры


Теги: массивы 
 


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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
157 Сообщений
ilyay ilyay
66 Сообщений
alex0402
53 Сообщений
AIFrame
47 Сообщений
andron81_81
44 Сообщений
oleg-x
44 Сообщений
BuhRust
33 Сообщений
MuI_I_Ika MuI_I_Ika
32 Сообщений
Golickoff Golickoff
31 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

  • Точка Гостей: 256
  • Точка Скрытых: 0
  • Точка Пользователей: 0

Нет пользователей онлайн.

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal