Войдите как ученик, чтобы получить доступ к материалам школы
Упражнения по внутреннему языку программирования 1С 8.3: пузырёк и факториал
Автор упражнений и преподаватель школы: Владимир Милькин
Упражнение №3. Напишите программу, которая создаёт массив из 100 случайных чисел в диапазоне от 0 до 1000 (включительно). Затем находит и выводит:
- Минимальный элемент в массиве (самый маленький из всех).
- Максимальный элемент в массиве (самый большой из всех).
- Среднее арифметическое всех чисел массива (сумма всех элементов, разделенная на количество элементов).
Случайные числа генерируются так:
ГСЧ = Новый ГенераторСлучайныхЧисел; // создали генератор случайных чисел СлучайноеЧисло = ГСЧ.СлучайноеЧисло(0, 1000); // сгенерировали случайное число, указав диапазон
Используйте справочник по языку 1С при выполнении упражнения — ссылка.
Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь.
Общий план
Создать массив из 100 случайных чисел от 0 до 1000.
5 Ввод и вывод данных python. Команда input()
Пробежаться по каждому из этих чисел и выбрать самое маленькое (минимум) и самое большое (максимум). Заодно подсчитать сумму всех чисел.
Разделить сумму чисел на их количество и получить среднее арифметическое.
Вывести пользователю минимальный и максимальные элементы, среднее арифметическое.
объявить генератор случайных чисел ГСЧ объявить пустой массив Числа цикл от 1 до 100: { генерировать случайное число (при помощи ГСЧ) от 0 до 1000 добавить это число в массив Числа } Минимум = Числа[0] Максимум = Числа[0] Сумма = 0 цикл для А от 0 до (количество элементов массива Числа) — 1: { ТекущийЭлемент = Числа[А] если ТекущийЭлемент меньше Минимум, тогда Минимум = ТекущийЭлемент если ТекущийЭлемент больше Максимум, тогда Максимум = ТекущийЭлемент Сумма = Сумма + ТекущийЭлемент } СреднееЗначение = Сумма / (количество элементов Числа) вывести Минимум, Максимум и СреднееЗначение
Эталонное решение. Сначала пишем код сами, проверяем на компьютере (как и все примеры программ из уроков), только потом сверяемся
Войдите на сайт как ученик
Авторизуйтесь, чтобы получить доступ ко всем материалам школы
Упражнение №4. Напишите программу, которая делает сортировку массива из предыдущего упражнения методом пузырька по возрастанию. Затем выводит отсортированный массив пользователю.
К примеру, был у нас массив: 1, 60, 20, 30, 0
После сортировки по возрастанию он будет выглядеть так: 0, 1, 20, 30, 60
В этом весь смысл. Сортировки бывают самые различные — быстрые и не очень. Но в данном задании я предлагаю вам в учебных целях воспользоваться широко известным среди программистов алгоритмом «Сортировка методом пузырька».
Суть этого алгоритма можно представить как выталкивание более лёгких пузырьков (меньших чисел) на поверхность (как можно ближе к первому элементу). В вышеприведённом примере 0 (ноль) в результате сортировки оказался вытолкнут на самый верх (крайне левая позиция, первый элемент в массиве).
18 Цикл while Python
Чтобы алгоритм заработал — просто перебирайте все числа массива, сравнивайте соседние и если левый сосед больше правого, меняйте их местами. Как только получится, что после очередного прохода массива вы не смогли сделать ни одной перестановки — готово. Массив отсортирован и его можно выводить пользователю.
Ещё более подробно о сортировке пузырьком можно прочитать здесь.
В эталонном решении я реализую «упрощённую» версию алгоритма (через бесконечный цикл), чтобы его суть стала понятна начинающим программистам.
Общий план
Создать массив из 100 случайных чисел от 0 до 1000.
Пробежаться по всем соседним числам этого массива и менять их местами,
если левый сосед больше правого, как бы выпихивая более легкие (меньшие) элементы
наверх (влево).
Снова пробежаться по всем соседним числам и менять их местами .
Снова пробежаться по всем соседним числам и менять их местами .
И так бегать пока в результате очередного «пробегания» не произойдёт ни одной перестановки. Как
только такой момент наступит, то это будет означать, что массив отсортирован и пора его
вывести пользователю.
Вывести все элементы массива пользователю.
объявить генератор случайных чисел ГСЧ объявить пустой массив Числа цикл от 1 до 100: { сгенерировать случайное число от 0 до 1000 добавить это число в массив } объявить бесконечный цикл { БылиПерестановки = Ложь цикл для Шаг от 0 до (количество элементов массива Числа) — 2: { если Числа[Шаг] > Числа[Шаг + 1] тогда { обменять элементы местами БылиПерестановки = Истина } } если БылиПерестановки = Ложь тогда прервать бесконечный цикл } вывести элементы массива Числа
Эталонное решение. Сначала пишем код сами, проверяем на компьютере (как и все примеры программ из уроков), только потом сверяемся
Войдите на сайт как ученик
Авторизуйтесь, чтобы получить доступ ко всем материалам школы
Упражнение №5. Напишите программу, которая генерирует случайное число от 1 до 15 (включительно), а затем вычисляет и выводит пользователю значение факториала этого числа.
Вычислить факториал числа очень просто. Для этого нужно просто перемножить все целые числа в диапазоне от 1 до этого числа.
К примеру, чтобы вычислить факториал 5 перемножим 1 * 2 * 3 * 4 * 5 и получим 120. Значит факториал 5 равен 120.
Ещё более подробно о вычислении факториала можно прочитать здесь.
Общий план
Сгенерировать случайное число. Перемножить все числа от 1 до этого числа друг с другом, тем самым получив значение факториала. Вывести его пользователю.
объявить генератор случайных чисел ГСЧ генерировать случайное Число от 1 до 15 Факториал = 1 цикл для Шаг от 1 до Число: { Факториал = Факториал * Шаг } вывести Факториал
Эталонное решение. Сначала пишем код сами, проверяем на компьютере (как и все примеры программ из уроков), только потом сверяемся
Войдите на сайт как ученик
Авторизуйтесь, чтобы получить доступ ко всем материалам школы
Для учеников
Второй модуль — самый сложный в школе. Если вы не программировали ранее — приготовьтесь к тому, что не сможете решить некоторые из задач с первого раза и без подсказок.
Поэтому вовремя останавливайтесь и спрашивайте преподавателя, если что-то не понятно даже с подсказками.
В крайнем случае, пройдите все оставшиеся модули школы, а затем вернитесь с новыми силами к решению задач второго модуля.
На вопросы учеников — отвечаю по почте, но прежде загляните в ЧАВО (ссылка) .
Войдите на сайт как ученик
Войдите как ученик, чтобы получить доступ к материалам школы
Источник: helpme1s.ru
Почему мой код не работает согласно заданию?
Напишите программу, которая запрашивает три цифры (от 0 до 9) и выводит число, получающееся из этих цифр в том же порядке, что и при вводе.
Ввод
Ввод содержит три цифры от 0 до 9 через пробел
Вывод
Выведите ответ на задачу
Ввод Вывод 1 2 3 123 0 1 2 12
я вроде правильно делаю, но почему-то если 2 нуля в начале, то он выводит 1 ноль и цифру без нуля.
#include using namespace std; int main() < int a,b,c; cin>>a>>b>>c; if (a!=0 b!=0 c!=0) < coutelse if (a==0) else if (a==0 b==0) else //else if (a==0 b==0 c==0) //if(a==0%10) return 0; >
- Вопрос задан более трёх лет назад
- 748 просмотров
1 комментарий
Простой 1 комментарий
Источник: qna.habr.com
Составьте программу, которая запрашивает цифру от 1 до 3 использует эту цифру в графическом окне.
письменность была нужна для оформления сделок, фиксации движения товаров, выручки, учета, финикийцы известны, прежде всего, как предприимчивые торговцы и отважные мореплаватели.
Ответ разместил: Гость
x — информационный вес одного символа
n — мощность алфавита (кол-во символов)
размер содержащейся в тексте информации находим по формуле:
k — кол-во символов в тексте
— один символ несет 8 битов (1 байт)
— байт в письме амазонки
один символ несет 7 битов
байт в письме омеги
Ответ разместил: Гость
в этом варианте представлен алгоритм без обратной связи, так как алгоритм представляет собой только однозначную последовательность команд.
такой алгоритм является линейным, или последовательным. то есть в нём отсутствует процесс передачи информации о состоянии объекта к объекту.
Ответ разместил: Гость
2000 знаков (но точно не уверен)
Источник: vse-znaniya.com