Что лучше паскаль или питон
С какого языка начать программирование Pascal или Python?
С какого языка лучше начать программировать: Pascal или Python?
В свободное от школы время планирую начать заниматься изучением одного из языков программирования.
Обработка естественного языка на Python. Задача на программирование
Здравствуйте! Помогите переписать этот код или же написать полностью новый. Так как моё чудо не.
Нужно перевести из языка прграммирования Pascal на Python
var s:string; i,j,n,k:integer; begin writeln(‘vvedite stroku:’); read(s); n:=length(s); for.
С какого языка лучше начать программировать: Pascal или Python?
В свободное от школы время планирую начать заниматься изучением одного из языков программирования.
За совет учить обязательно первым Паскаль отправил бы на Колыму.
Питон относится к языкам с практическим отсутствием программной «магии». Исключения составляют только метаклассы. Но до них нужно дорости. А это минимум 2-3 года.
Наличие большого количество готовых решений и фреймверков. Питон обладает большим количеством расширений и фреймерков. Большая часть из них бесплатна.
Кроссплатформенность. Программа на питоне зачастую не требует изменений для запуска ее на другой операционной системе. Мои программы смело работают как под никсами так и по виндой.
Лаконичность. Код на питоне зачастую более компактен.
Питон автоматически приучает писать хороший код. Это достигается использованием отступов как обязательных элементов языка.
Почему в школах до сих пор преподают Pascal а не Python?
Ведь этот язык лучше и востребованней чем тот Pascal который сейчас преподают.
Вообще да, Python гораздо приятнее Паскаля и я бы выбрал для обучения именно его. Прежде всего вследствие обилия библиотек. Школьника нужно заинтересовать, чтобы он начал работать мозгом, а для этого нужны интересные проекты. Хочется сделать графику? Пожалуйста, pygame. Хочется использовать устройство по USB? Да сколько угодно. Анализировать HTML-код? Да десятью разными способами.
Однако, смена Паскаля на Python как таковая не решит той проблемы с обучением информатике, какая присутствует в системе образования. Корни этой проблемы лежат в структуре системы образования и в качестве обучения самих учителей. А также, как это ни банально, в уровне их жизни.
Если министерство образования в директивно-приказном порядке решит вдруг сделать такое изменение, это вряд ли принесёт кому-то пользу. Только море головной боли и затраты бюджетных средств.
На самом деле как раз проблема кроется в том, что в школе стоит задача ознакомить с тем, что такое программирование и дать примерное представление о том, как это делается. Паскаль по сути просто язык для обучения программирования, если мне память не изменяет, то он и создавался именно с этой целью.
Прост в освоении, прост сам со себе и абсолютно со своими задачами справляется.
Сейчас в ВУЗе где я учился на втором курсе преподают c# и javascript в качестве объектно-ориентированных языков (в частности за счет принципиальных различий ОО модели выбрали эти два языка для побаловаться). Минимально покрывают ГОФ-ские шаблоны. Но опять же, из сотни студентов хорошо если десяток поймет зачем все это нужно. Про всякие SOLID/GRASP/KISS/DRY/etc вообще вскользь просто упоминали курсе на четвертом.
Презентация была опубликована 2 года назад пользователемНикита Смоляков
Похожие презентации
Презентация по предмету «Информатика» на тему: «Доклад по информатике. Python vs Pascal. Смоляков Никита класс 9 М школа 1288.». Скачать бесплатно и без регистрации. — Транскрипт:
1 Доклад по информатике Смоляков Никита класс 9 М школа 1288
3 Паскаль Класс языка императивный, структурированный императивный структурированный Тип исполнения компилируемый Появился в Автор Никлаус Вирт Никлаус Вирт Расширение Расширение файлов.pas для файлов кода,.inc для заголовочных файлов.заголовочных файлов Система типов Система типов статическая, сильная, безопаснаястатическаясильнаябезопасная Основные реализации: CDC 6000, ICT 1900, Pascal-P, PDP-11, PDP-10, IBM System/370, HP, Free Pascal, GNU, PascalABC.NETCDC 6000ICT 1900Pascal-PPDP-11PDP-10IBM System/370HPFree PascalGNUPascalABC.NET Диалекты UCSD, Turbo, DelphiUCSDTurboDelphi Испытал влияние Алгол Алгол Повлиял на Модула-2, Оберон, Компонентный Паскаль, Ада, Object Pascal, Java, Oxygene Модула-2Оберон Компонентный Паскаль АдаObject Pascal JavaOxygene Python Класс языка мультипарадигмальный: объектно-ориентированный, рефлективный, императивный, функциональный, аспектно- ориентированный, динамический мульти парадигмальный объектно-ориентированный рефлективныйимперативныйфункциональныйаспектно- ориентированный динамический Тип исполнения интерпретируемый, компилируемый в байт-код, компилируемый в MSIL, компилируемый в байт-код Javaинтерпретируемыйбайт-код компилируемыйMSILбайт-кодJava Появился в 20 февраля февраля 1991 Автор Гвидо ван Россум Гвидо ван Россум Разработчик Гвидо ван Россум и Python Software Foundation Гвидо ван РоссумPython Software Foundation Расширение Расширение файлов.py,.pyw,.pyc,.pyo,.pyd Выпуск Выпуск (1 мая 2018) (20 октября 2018)1 мая октября 2018 Система типов Система типов сильная, динамическая сильная динамическая Основные реализации: CPython, Jython, IronPython, PyPy, StacklessCPythonJythonIronPythonPyPyStackless Испытал влияние ABC, Modula-3, Lisp, Tcl, Smalltalk, C, Java, IconABCModula-3LispTclSmalltalkCJavaIcon Повлиял на Ruby, Boo, Groovy, ECMAScript, CoffeeScript, Swift, NimRubyBooGroovyECMAScriptCoffeeScriptSwiftNim ЛицензияPython Software Foundation License кроссплатформенность
4 паскаль, в его первоначальном виде, представляет собою чисто процедурный язык и включает в себя множество алголоподобных структур и конструкций с зарезервированными словами процедурный язык Python обладает чётким и последовательным синтаксисом, продуманной модульностью и масштабируемостью, благодаря чему исходный код написанных на Python программ легко читаем. масштабируемостью
=1) and (a =1) and (b =1) and (a =1) and (b 6 1 =1) and (a =1) and (b =1) and (a =1) and (b =1) and (a =1) and (b =1) and (a =1) and (b =1) and (a =1) and (b
7 Преимущество Python краткость и лаконичность Преимущество паскаля компилятор Паскаля имеет невысокие аппаратные и системные требования
8 Цикл со счетчиком For I in range(n): for I in range(1,10) For I :=0 to n do begin end; for I := to 10 do begin end
9 Ввод данных word = input(«введите ваше слово: «) var a: integer; Begin writeln(«введите ваши данные: «) read(a); end
10 Вывод данных word = hello world print(word) var word: string; Begin word :=’hello world’; writeln(word); end.
11 массив river = [‘Москва’, ‘Обь’, ‘Лена’ ] for i in range(0,3): print(river[i]) var i: integer; river: array [1..3] of string=(‘Москва’,’Обь’,’Лена’); Begin for i :=1 to 3 do writeln (river[i]); end.
Презентация Python vs Pascal: выбор языка программирования в школьном курсе информатики
Онлайн-конференция
«Современная профориентация педагогов
и родителей, перспективы рынка труда
и особенности личности подростка»
Свидетельство и скидка на обучение каждому участнику
Описание презентации по отдельным слайдам:
Описание слайда:
«Python vs Pascal: выбор языка программирования
в школьном курсе информатики»
Автор:
Оленберг Анатолий Анатольевич,
учитель математики, физики, информатики
МКОУ «Верхнемазовская СОШ»
Описание слайда:
Почему Pascal? Почему не Python?
Python популярен
Широкая область использования
Windows, Linux, Mac OS, Android, iOS и др.
УМК Босова Л.Л.
УМК Полякова К.Ю.
Описание слайда:
Задача настоящей работы
посмотреть на Python с точки зрения учителя, преподающего основы программирования в рамках школьного курса информатики на уровне основного общего образования с помощью языка Pascal
рассмотреть достоинства и недостатки Python как языка для обучения программированию
Описание слайда:
Общие сведения
Автор: Никлаус Вирт
Разработан в 70-е гг. XX в.
Назван в честь Блеза Паскаля
Версии:
Turbo Pascal 7.0
Delphi
Lazarus
PascalABC.NET
Pascal
Python
Автор: Гвидо ван Россум
Разработан в 80-90-е гг. XX в.
Назван в честь телешоу «Летающий цирк Монти Пайтона»
Версии:
Python 2.7
Python 3.9.2
Описание слайда:
Описание слайда:
Особенности синтаксиса
Ошибочная запись цикла вывода чисел от 0 до 9
Описание слайда:
Типизация переменных
Статическая типизация переменных
переменные объявляются перед использованием в блоке описания используемых данных
переменной приписывается определенный тип данных
Pascal
Python
Динамическая типизация переменных
переменные не нужно объявлять
тип переменной определяется автоматически
Описание слайда:
Типизация переменных
Python
Функция, решающая линейное уравнение ax = b
def solve (a, b):
if a == 0:
if b == 0: return True
else: return None
else:
return b / a
Описание слайда:
Типизация переменных
if a > b:
print (‘OK’)
else:
this is spam
Python
Python
х1 = 0
if a > b:
xl = 1
Описание слайда:
Ввод данных
var A: integer;
begin
write (‘Введите число’);
read (A);
write (A*4)
end.
Результат выполнения:
54 * 4 = 216
Pascal
Python
print (‘Введите число’)
A = input ()
print (A*4)
Результат выполения:
‘54’ * 4 = ‘54545454’
Результат выполнения:
54 * 4 = 216
Программа, требующая ввести число и умножить его на 4
Описание слайда:
Ввод данных
write (‘Введите три числа’);
read ( a, b, c );
f = input(‘Введите три числа’)
a, b, c = map(int, f.split())
Ввод нескольких чисел
Описание слайда:
Компактность кода
c:=a;
a:=b;
b:=c;
Pascal
Python
a, b = b, a
if a >= b then
max := a
else
max := b;
print(max(a, b))
Задача — поменять местами значения двух переменных
Алгоритм нахождения максимального из двух чисел
Описание слайда:
Описание слайда:
Списки
При работе со списками важно помнить, что список — это ссылка.
A = [1, 2, 3]
B = A
[1, 2, 3]
A
B
Чтобы работать с каждым списком отдельно, необходимо создать копию списка
B = A[:]
A
B
[1, 2, 3]
[1, 2, 3]
Описание слайда:
Описание слайда:
Черепашья графика
import turtle
t=turtle.Turtle()
t.color(‘blue’, ‘green’)
t.begin_fill()
for i in range (72):
for j in range (4):
t.forward (150)
t.left(90)
t.right (5)
t.end_fill()
Описание слайда:
Графический интерфейс
from tkinter import *
window = Tk()
window.title(‘Привет’)
label=Label(window, text = ‘Привет, мир!’)
label.pack(padx=200, pady = 50)
window.mainloop()
Описание слайда:
Встроенные библиотеки
•math — математические функции;
•fractions — рациональные дроби;
•decimal — десятичная арифметика;
•re — регулярные выражения;
•itertools — перестановки, сочетания;
•sqlite — работа с базами данных SQLite;
•tkinter — графический интерфейс.
Описание слайда:
Достоинства Python
простейшая программа на Python в отличие от Pascal занимает всего одну строчку: print (‘Привет, мир!’);
понятный синтаксис, отступы как часть синтаксиса языка;
позволяет решать задачу на более высоком уровне абстракции;
развитые структуры данных: списки, словари, множества;
компактность программ (достигается за счет встроенных средств);
большая библиотека встроенных модулей;
возможность разработки программ с графическим интерфейсом;
поддерживает различные подходы к программированию.
Описание слайда:
Достоинства Python
простейшая программа на Python в отличие от Pascal занимает всего одну строчку: print (‘Привет, мир!’);
понятный синтаксис, отступы как часть синтаксиса языка;
позволяет решать задачу на более высоком уровне абстракции;
развитые структуры данных: списки, словари, множества;
компактность программ (достигается за счет встроенных средств);
большая библиотека встроенных модулей;
возможность разработки программ с графическим интерфейсом;
поддерживает различные подходы к программированию.
Описание слайда:
Недостатки Python как учебного языка
скрывает от школьника реализацию некоторых алгоритмов за счет встроенных средств
ввод данных в Python организован менее удобно, чем в Pascal
ошибки, связанные с динамической типизацией переменных
логические ошибки, опечатки в коде программы, которые не обнаруживаются интерпретатором
Python предоставляет программисту много свободы, перекладывая на него всю ответственность за возможные ошибки.
Поэтому программы на Python требуют очень тщательного тестирования.
Описание слайда:
Вывод
Python можно использовать в качестве второго языка для обучения программированию:
в рамках учебного курса или модуля по предмету,
в рамках кружковой работы, организуемой на базе учебного заведения
Описание слайда:
Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.
Курс повышения квалификации
Дистанционное обучение как современный формат преподавания
Курс профессиональной переподготовки
Информатика: теория и методика преподавания в образовательной организации
Курс повышения квалификации
Современные педтехнологии в деятельности учителя
Ищем педагогов в команду «Инфоурок»
Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:
также Вы можете выбрать тип материала:
Общая информация
Похожие материалы
План-конспект урока информатики по теме: «ИНФОРМАЦИЯ И ЕЁ СВОЙСТВА».
Конспект урока по информатике для 7 класс по теме: «Разработка алгоритма, содержащего оператор цикла»
Реферат на тему Виды занятий с ИКТ
Презентация по информатике на тему Использование ИКТ в работе воспитателя ДОУ
Научная работа по информатике на тему «Использование ИКТ в работе воспитателей»
Тест по информатике 8 класс
Урок «Адресация в Интернете», № 3 в теме «Коммуникационные технологии
» Фигура салу» Практикалық жұмыс
Не нашли то что искали?
Воспользуйтесь поиском по нашей базе из
5379372 материала.
Вам будут интересны эти курсы:
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.
В МГПУ сформулировали новые принципы повышения квалификации
Время чтения: 4 минуты
Учителям предлагают 1,5 миллиона рублей за переезд в Златоуст
Время чтения: 1 минута
МГУ откроет первую в России магистерскую программу по биоэтике
Время чтения: 2 минуты
Учителям истории предлагают предоставить право бесплатно посещать музеи
Время чтения: 2 минуты
ВПР для школьников в 2022 году пройдут весной
Время чтения: 1 минута
Путин поручил не считать выплаты за классное руководство в средней зарплате
Время чтения: 1 минута
Подарочные сертификаты
Ответственность за разрешение любых спорных моментов, касающихся самих материалов и их содержания, берут на себя пользователи, разместившие материал на сайте. Однако администрация сайта готова оказать всяческую поддержку в решении любых вопросов, связанных с работой и содержанием сайта. Если Вы заметили, что на данном сайте незаконно используются материалы, сообщите об этом администрации сайта через форму обратной связи.
Все материалы, размещенные на сайте, созданы авторами сайта либо размещены пользователями сайта и представлены на сайте исключительно для ознакомления. Авторские права на материалы принадлежат их законным авторам. Частичное или полное копирование материалов сайта без письменного разрешения администрации сайта запрещено! Мнение администрации может не совпадать с точкой зрения авторов.
Что не так с современным преподаванием информатики
Привет, Хабр! Меня зовут Анна Агабекян, я ментор и автор курсов по направлениям «Тестировщик-автоматизатор на Python» (QAP-тестирование) и «Fullstack-разработчик на JavaScript» в SkillFactory, а также преподаю физику и информатику в лицее. Параллельно с преподаванием я веду научную работу, посвящённую проблемам образования, и на её основе решила сделать статью для Хабра, так как, на мой взгляд, проблема качественного образования в области информатики и IT сейчас стоит очень остро, но остаётся неосвёщенной. Как преподаватель я вижу, что сейчас процесс развития образовательных организаций отстает от требований IT-сферы. Хотела бы с вами поделиться своим видением данной проблемы и возможных путей решения.
Одной из основных проблем преподавания информатики и информационных технологий в средней школе становится «цикл жизни» учебника, который совершенно не соответствует постоянно ускоряющемуся «циклу жизни» технологий.
Некоторые учебники, использование которых в школах рекомендовано, попросту стыдно давать в руки ученикам, настолько архаичным и смешным для современного ребенка является то, что в них написано. Особенно этим грешат описываемые в этих учебниках программные продукты или операционные системы. В учебном плане, составляемом по этим учебникам, практически не остаётся времени для рассмотрения реальных или перспективных технологий и тенденций развития ИКТ и технологий программирования. Хотя именно они должны стать базой для углублённого изучения на уроках информатики.
Зачастую в современных школах обучение информатике происходит преимущественно на пользовательском уровне. Детей учат делать простые презентации, редактировать изображения, создавать документы, работать в таблицах, придумывать надёжные пароли. Уроки по «изучению устройства компьютера» или «созданию рисунка в редакторе Paint» превращаются в бессмысленное занятие, ничего не дают уму и в целом расхолаживают обучающегося, закладывают негативное отношение к предмету и в целом к школьным занятиям, работая на снижение мотивации к содержательной учебной деятельности.
Хотелось бы написать, что в высшей школе дела идут лучше, но нет, там те же проблемы — устаревающие госстандарты образования и хромающая организация учебного процесса. Самый показательный пример устаревания образовательных программ — древние языки программирования.
Языки программирования, используемые в учебных заведениях
Когда-то наиболее популярными языками программирования в школах мира были Бейсик и Паскаль. Бейсик всегда считался самым простым языком программирования, а Паскаль — самым подходящим языком для обучения программированию. Но теперь это не так. Да, Бейсик прост. Но он создавался во времена, когда человечество не имело никакого опыта создания компьютерных систем, и основан на устаревших и не оправдавших себя принципах. Собственно, никакой фундаментальной целостной идеи в основе Бейсика не лежит.
Эволюция языков программирования
Если спросить детей, какой язык они изучают на информатике, рейтинг ответов будет таким:
Вы имеете в виду английский?
Как мы видим, детям даются знания по языкам, которые не используются сейчас в профессиональной разработке. С точки зрения кадров, это, наверное, правильно, потому что не нужно переучивать преподавателей и переписывать учебники. Но ни Паскаль, ни Бейсик, ни блок-схемы сейчас не нужны в профессиональном программировании — разработческая мысль давно шагнула вперёд.
Паскаль лишь только помогает преподавать алгоритмику, но писать современные программы на нём крайне сложно, и вот почему:
нет инструмента для быстрого создания интерфейса программы;
слабая графическая часть, которая может рисовать только простейшие объекты;
ограничения по размеру используемой памяти в переменных и циклах;
нет встроенной поддержки web-сервисов и страниц;
Паскаль не знает, как работать с современными базами данных, протоколами обмена, облачными хранилищами и сервисами.
Как альтернативу для изучения можно рассмотреть целую «экосистему» языков программирования, которые постоянно эволюционируют, расщепляются и сливаются. Их необходимо отбирать по следующим критериям:
Чистота и ясность кода, читаемость кода.
Чистота и целостность парадигмы, заложенной в основу языка.
Многогранность и гибкость, возможность писать сложные программы кратко и красиво.
Простота синтаксиса, прозрачность интерпретации языковых конструкций.
Наличие стандартных библиотек и средств интеграции проектов друг с другом и с другими системами и технологиями.Озвученным критериям вполне соответствует Python. Так почему бы не использовать его в качестве образовательного базиса?
Согласно предъявляемым госстандартом требованиям к предметным результатам освоения базового курса информатики «ученик должен владеть умением понимать программы на выбранном универсальном алгоритмическом языке и владеть приёмами написания программы для решения стандартной задачи с использованием основных конструкций и отладки таких программ».
Под универсальным алгоритмическим языком следует понимать любой императивный язык программирования, что не противоречит использованию языка Python. Python обладает стандартными алгоритмическими конструкциями и имеет гибкую систему отладки программ.
Таким образом, преподаватель имеет право выбрать язык программирования Python в качестве средства обучения основам алгоритмизации и программирования. Для большей наглядности давайте сравним Python с одним из широко используемых сейчас в школах и вузах языком.
Сравнение ЯП, используемых в обучении программированию
Разберём главные отличительные особенности языка программирования Python и проведём сравнение с Паскалем.
1. Простой синтаксис и низкий порог входа
Python вместо знаков препинания или ключевых слов (в Паскале такими словами являются «begin» и «end») использует отступы для обозначения выполнения блока. Программы, написанные в одну строку или с другими нарушениями в структуре, не смогут быть выполненными в Python. Такая особенность позволит сократить размер кода и увеличить читаемость программы. Синтаксис Python приучит школьников писать «красивый» код, что улучшит написание и понимание кода. Так, например, различаются записи цикла на Паскале и Python (таблица ниже).
Сравнение синтаксиса цикла с предусловием в Паскаль и Python
Паскаль
Python
while s + n
Узнайте, как прокачаться и в других специальностях или освоить их с нуля: