• Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: Екатерина_Пашкова  
Форум учителей об образовании в России и мире » Форум педагогов по предметам, разделам » Форум учителей информатики » Хочу учиться (но уже поздно)
Хочу учиться (но уже поздно)
ShurshikДата: Пятница, 10.12.2010, 19:52 | Сообщение # 16
Shurshik

Александр
Ранг: Первоклашка (?)
Группа: Пользователи
Сообщений:
30
Награды: 0
Статус: Offline
Считаю что учится никогда не позно, но если учить то с самых азов, с построения схем "и" "или" "нет" на тригерах, с DOS, далее Питер Абель, Фленов Михаил, после строение сетей на коаксиале, на витой паре и тд...
10.12.2010
ДжеттаДата: Понедельник, 13.12.2010, 13:49 | Сообщение # 17
Джетта

Джетта
Ранг: Школьник (?)
Группа: Пользователи
Сообщений:
88
Награды: 6
Статус: Offline
Quote (Demol)
Я не знаю как на человеческом языке описать этот процесс

Мы говорили об алгоритмическом мышлении, помните? smile Для того, чтобы стать хорошим программистом, а не просто кодером, очень важно обладать навыками именно алгоритмического мышления. В противном случае вы не сможете самостоятельно решать встающие перед вами задачи.
Все что вам нужно для описания алгоритма для блондинки - внимательно присмотреться к себе самому. И разбить ваши собственные действия по элементарным шагам.
Например, когда вы ищете минимальный элемент массива, что вы на самом деле делаете? Берете первое число, запоминаете его. Сравниваете со вторым. Если второе - меньше, то выкидываете из своей памяти первое и запоминаете второе. Запомненное сравниваете с третьим.. и так далее. Раз вас тянет воспользоваться сразу функцией из языка программирования, то плюньте на алгоритмы сортировки. Попробуйте описать по шагам, скажем, ваш обычный поход в магазин. Допустим, вам надо купить что нибудь на ужин, имея определенную сумму денег. Вы решаете, что заранее планировать не будете, а купите то, что вам понравится, исходя из наличной суммы. Учтите также расположение отделов в магазине (скажем, это супермаркет, в котором можно купить все - и мясо, и овощи, и напитки и хлеб и тыпы). Разумеется, ваша задача - уложиться в сумму и провести в магазине минимальное время.

Машина - то есть компутер - это та же глупая блондинка. Она умеет только выделять память, сравнивать два числа и выполнять операцию сложения двух чисел. Больше она ничего не умеет smile Любая функция языка программирования высокого уровня - это производная от этих базовых операций.

13.12.2010
astronomДата: Вторник, 14.12.2010, 03:30 | Сообщение # 18
astronom

Алексей Шеллер
Ранг: Магистр (?)
Группа: Пользователи
Сообщений:
562
Награды: 7
Статус: Offline
ИМХО, чтение большинства книг типа "Самый полный самоучитель по ..." нужно совмещать с изучением фундаментальных трудов.

Общая теория всего на свете:
весь Э. Таненбаум

Общие понятия и базовые алгоритмы:
Н. Вирт - "Алгоритмы и структуры данных"

Развитие стремления к совершенству:
Д. Кнут - "Искусство программирования" т. 1
Н. Н. Непейвода - "Основания программирования"

Развитие способности написать рабочую программу, даже после воздействия на мозг идей Кнута:
П. Гудлиф "Ремесло программиста. Практика написания хорошего кода"

Логические операции, булева алгебра и все такое:
Книги по ассемблеру. (учебник Юрова лежит почти в каждом книжном)

Сети:
В.Г. Олифер, Н.А. Олифер "Компьютерные сети. Принципы, технологии, протоколы" (учебник, поэтому довольно сухо, но по делу)
Все тот же Таненбаум "Компьютерные сети" (не учебник, поэтому, живо, иногда совсем не по делу, но фундаментально)

p.s. на рутрекере есть хорошая подборка различных учебников информатики.

Добавлено (14.12.2010, 03:30)
---------------------------------------------

Quote (Demol)
Мне проще на паскале всё это описать.... ладно, постараюсь без программирования

Программист должен понимать, хотя бы в общих чертах, что будет делать машина на том или ином этапе работы программы.
Для этого необходимо уметь разбивать одну большую задачу на множество мелких. По сути, это и есть алгоритмическое мышление.
Например вы пишете:
Quote
Выбираю самое маленькое из пересмотренных

Как выбираете?
Представим ситуацию: вам попадается совсем уж блондинистый компьютер, он даже на фоне других компьютеров-блондинок отличается совсем уж светлыми проводами. Этот компьютер может работать только с двумя соседними числами. Т.е., вы не можете заставить его выбрать самое маленькое число во всем массиве. Он может сравнить только два соседних числа.
Что делать?

Quote
ищу самое близкое по значению число во втором ряду

Как ищете?
Пусть основная последовательность такова:
5 6 2 7 0 41 57 3 16 9
В это время во второй ряд уже отправлены 2 элемента
13 56

Мы выбираем из основного ряда элемент "5" и находим самое близкое к нему значение.
Что значит "находим самое близкое к нему"?
Это означает "у нас есть последовательность трех элементов, мы должны ее упорядочить". Т.е.. для того, чтобы отсортировать исходную последовательность, мы должны отсортировать другую, производную последовательность ... Мюнхгаузен и волосы biggrin Для решения этой задачи мы можем
а) Организовать еще одну последовательность и отправить в нее первое число нашей маленькой производной последовательности .., а потом еще одну последовательность ... и так до тех пор, пока на последнем листке не окажется один единственный элемент ...
б) Вычесть из каждого элемента второго ряда наш новый элемент из основного ряда и посмотреть, где результат будет ближе к нулю.
в) Сравнить новый элемент с первым элементом второго ряда. Если новый элемент больше, сравниваем его со следующим элементом и т.д. ..
г) Определить в алгоритме функцию "Мне повезет!", которая помещает следующий элемент из основной последовательности в совершенно случайную позицию во второй последовательности. smile

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

14.12.2010


Сообщение отредактировал astronom - Вторник, 14.12.2010, 02:06
Форум учителей об образовании в России и мире » Форум педагогов по предметам, разделам » Форум учителей информатики » Хочу учиться (но уже поздно)
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:



Спорная ситуация с родителями или администрацией? Ищете выход из проблемы на уроке или с учеником?
Не знаете, как что-то сделать на компьютере?


Вы можете задать анонимный вопрос
х
Подробно изложите суть вашего вопроса.
Обратите внимание, что вопросы публикуются в открытом доступе на сайте, поэтому не указывайте персональные данные ваши или иных лиц. Однако стоит указать свой РЕГИОН, т.к. законодательство в разных регионах разное.
Отправить