Реферат: Решение задач по физике на компьютере
Название: Решение задач по физике на компьютере Раздел: Рефераты по физике Тип: реферат | |||||||||||||||||||||||||||||||||||||
Южно-Уральский Государственный Университет Архитектурный факультет Кафедра Архитектуры Реферат Тема работы : Решение задач по физике на компьютере Выполнил : Проверил : Челябинск 2009 г. Южно-Уральский Государственный Университет Факультет Архитектурный Специальность Архитектура Кафедра Архитектура Дисциплина Компьютерные методы решения задач по физике Задание Студенту группы 1. Тема реферата Решение задач по физике на компьютере 2. Срок сдачи 28.05.09 3. Исходные данные к реферату Определение отметок пола помещения при проектировании видимости. Профиль пола — кривая наименьшего подъёма. 4. Содержание расчетно-пояснительной записки Титульный лист, задание, аннотация, содержание, введение, язык программирования, операционная система программирования, расчетная схема аналитической зависимости, условные обозначения, блок-схема алгоритма, список имен, программа, контрольный пример, порядок работы на компьютере, компьютерный расчет, заключение, литература. 5. Дата выдачи задания: 5.03.09 руководитель задание принял к исполнению 5.03.09 подпись студента__________________ Аннотация Расчёт профиля пола зрительного зала, кривая наименьшего подъема. Челябинск, ЮУрГУ, 2009, стр., 2 схемы, 1 иллюстрации. Библиография литературы-3 наименования. Целью реферата является рассмотрение и решение одной из задач по архитектурно-строительной физике (расчёт профиля пола) с помощью компьютера, а также ознакомление с ЭВМ и таким языком программирования как BASIC. Повышение производительности компьютеров и перемены в составе используемого ПО делают роль языков описания сценариев в создании приложении будущего все более и более важной. Эти языки отличаются от языков программирования системного уровня тем, что их основное назначение – связывать различные компоненты и приложения друг с другом. В них находят применение без типовые подходы к описанию данных, что позволяет вывести программирование на более высокий уровень и ускорить процесс разработки по сравнению с языками системного уровня. Содержание Задание Аннотация Введение Язык программирования Операционная система Программирование Расчётная схема Аналитические зависимости Условные обозначения Блок-схема алгоритма Список имён Программа Контрольный пример Порядок работы на компьютере Компьютерный расчет Заключение Литература Введение В 21 веке компьютерные методы решений задач заменили большинство «ручных» аналогов. Компьютерный расчёт позволяет в кратчайшие сроки и максимально точно решить поставленные задачи. Компьютерные методы решения задач по физике – удобный и не сложный способ получения интересующего вас ответа, также этот метод позволяет избежать сложных математических преобразований, а следовательно и ошибок в них. Расчёт можно проводить с использованием любого из существующих языков программирования, но мы остановимся на языке BASIC, так как он удовлетворяет нашим требованиям и имеет достаточно простой синтаксический язык. Бе́йсик (BASIC — сокращение от англ. Beginner's All-purpose Symbolic Instruction Code — универсальный код символических инструкций для начинающих; англ. basic — основной, базовый) — семейство высокоуровневых языков программирования. Синтаксис языка напоминает Fortran, и многие элементы — явные заимствования из него. Язык задумывался для обучения, поэтому его конструкции максимально просты. Как и в других языках программирования, ключевые слова взяты из английского языка. Основных типов данных два: строки и числа. С появлением версии Visual Basic, а также различных его модификаций (таких как VBA), в языке появились многие другие типы данных и дополнения, типичные для современных языков программирования (например, такие как объектная модель). Объявление переменных не требует специальной секции (в отличие, например, от Паскаля). Объявление переменной — это первое её использование. О популярности BASIC-а среди массового пользования персональных компьютеров говорить не приходится, На смену BASIC-у пришли другие, более совершенные языки, такие как C++, которые поддерживают объектно-ориентированного программирование и другие важные возможности. Хотя в нашем случае BASIC наилучшем образом подходит для реализации поставленных задач. Язык программирования Под языком программирования мы будем понимать совокупность средств и правил представления алгоритма в виде, приемлемом для компьютера. Язык программирования является искусственным языком, который обладает синтаксисом (строение предложения, правила сочетания слов) и семантикой (смысловое значение слов и оборотов речи), что не допускают свободного толкования конструкций. Существует разделение всех языков программирования на две большие группы — языки высокого и низкого уровней. Языком самого низкого уровня считается язык так называемых машинных кодов. Все остальные алгоритмические языки лежат где-то посередине. Языки высокого уровня — это и Fortran, и Pascal, и C, но выполнение алгоритма компьютером в данном случае несколько тормозится предварительным переводом на язык машинных кодов. В языке программирования BASIC в средства написания программ заложен алфавит, состоящий из 26 латинских заглавных букв; 10 арабских цифр, и специальных символов – разделителей:
2. Арабские цифры: 1, 2, 3, 4, 5, 6, 7, 8, 9, 0. 3. Разделители: , (запятая), ; (точка с запятой), . (точка), : (двоеточие), ' (апостроф), " (кавычки), ( (открывающая скобка), ) (закрывающая скобка), символ <Пробел>.
5. Знаки операций отношений: > (больше), < (меньше), = (равно), <> (не равно), >= (больше либо равно), <= (меньше либо равно). Операции одного уровня выполняются слева направо. Если необходимо изменить такой порядок вычислений, необходимо использовать круглые скобки. В арифметических выражениях могут быть использованы любые типы числовых данных: с плавающей точкой, с фиксированной точкой, целые. Символы служат для записи более сложных конструкций языка: констант, переменных, функций, выражений, ключевых слов (имен операторов). Константа – это величина, которая в ходе выполнения программы имеет всегда только одно значение и не может быть изменена. Переменные – величины, значения которых могут изменяться в процессе выполнения программы. Переменная всегда обозначается именем или идентификатором. Имена переменных в Бейсике (для большинства систем) обозначаются либо одной латинской буквой, латинской буквой с последующей за ней цифрой, либо двумя буквами. Стандартные функции в Бейсике обозначаются именами, состоящими из трех латинских букв, за которыми следует аргумент в круглых скобках. Арифметические выражения устанавливают порядок выполнения операций для получения числового значения на основе заданных исходных данных. В арифметических выражениях используются константы, простые и индексированные переменные, указатели функций, соединенные знаками арифметических операций и круглыми скобками. Вычисление арифметических выражений производиться по следующим правилам:
- + (сложение, слева от клавиши <Backspace> или на малой цифровой клавиатуре "серый плюс"); - - (вычитание, то же, что дефис, или на малой цифровой клавиатуре "серый минус"); - * (умножение, там же, где цифра 8 на основной клавиатуре при нажатой клавише <Shift> или на малой цифровой клавиатуре "серая звездочка"); - / (деление, на разных клавиатурах бывает в разных местах или на малой цифровой клавиатуре "серый слэш"); - ^ (возведение в степень, при выбранном латинском шрифте там же, где цифра 6 на основной клавиатуре при нажатой клавише <Shift>); - () (скобки, там же, где цифры 9 и 0 на основной клавиатуре при нажатой клавише <Shift>).
Чтобы компьютер вычислил выражение правильно, необходимо помнить о приоритете выполнения действий. Тут все как в элементарной математике:
Операционная система Операционная система (ОС) - комплекс системных и управляющих программ, предназначенных для наиболее эффективного использования всех ресурсов вычислительной системы (ВС) (Вычислительная система - взаимосвязанная совокупность аппаратных средств вычислительной техники и программного обеспечения, предназначенная для обработки информации) и удобства работы с ней. Операционная система позволяет абстрагироваться от деталей реализации аппаратного обеспечения, предоставляя разработчикам программного обеспечения минимально необходимый набор функций. С точки зрения обывателей, обычных пользователей компьютерной техники, операционная система включает в себя и программы пользовательского интерфейса. Назначение ОС - организация вычислительного процесса в вычислительной системе, рациональное распределение вычислительных ресурсов между отдельными решаемыми задачами; предоставление пользователям многочисленных сервисных средств, облегчающих процесс программирования и отладки задач. Операционная система исполняет роль своеобразного интерфейса ( Интерфейс - совокупность аппаратуры и программных средств, необходимых для подключения периферийных устройств к ПЭВМ) между пользователем и ВС, т.е. ОС предоставляет пользователю виртуальную ВС. Это означает, что ОС в значительной степени формирует у пользователя представление о возможностях ВС, удобстве работы с ней, ее пропускной способности. Различные ОС на одних и тех же технических средствах могут предоставить пользователю различные возможности для организации вычислительного процесса или автоматизированной обработки данных. Основные функции операционных систем (ОС) Операционные системы могут классифицироваться по следующим показателям: 1. количество пользователей: однопользовательские ОС (MS-DOS, Windows) и многопользовательские ОС (VM, UNIX). 2. доступ: пакетные (OS 360), интерактивные (Windows, UNIX), системы реального времени (QNX, Neutrino, RSX). 3. количество решаемых задач: однозадачные и многозадачные. Работа производилась на компьютере с операционной системой MicrosoftWindowsVistaUltimateEN 32-bit, ServicePack 1. В линейке продуктов Windows NT новая система носит номер версии 6.0 (Windows 2000 — 5.0, Windows XP — 5.1, Windows Server 2003 — 5.2). Windows Vista, как и Windows XP, — исключительно клиентская система Минимальные требования к аппаратной части компьютера для запуска на нём Windows Vista : Процессор с тактовой частотой не менее 800 МГц, объём опаративной памяти — 512 МБ, видеоадаптер совместимый с DirectX 8.0 и дисковое пространство не менее 15 ГБ на саму операционную систему и 20 ГБ свободного пространства. Программирование Программа может состоять из нескольких или сотен тысяч строк текста. Предложена следующая классификация длины программ: малая (меньше 100 строк), средняя (100-1000 строк), большая (1000-10000 строк) и очень большая (больше 10000строк). Решение задачи на ЭВМ включает в себя несколько этапов: постановка задачи, ее математическая формулировка, выбор метода решения, разработка алгоритма, составление программы, отладка и решение задачи. Этапы решения задачи при помощи компьютерной программы: 2. Постановка задачи предполагает точные формулировки задачи и цели, которые необходимо достигнуть при решении.Один из самых главных этапов. Нужно однозначно и вполне определенно понять, что будет результатом решения задачи. Каковы исходные данные? Существуют ли ограничения для этих данных? Можно сказать, что точность и четкость в постановке задачи — это половина дела. Напротив, в случае недопонимания каких-то моментов вероятность непроизводительной траты времени и отрицательного результата резко возрастает. 3. Математическая формулировка заключается в записи условия задачи с помощью математических обозначений, формул, зависимостей, в определении исходных данных и формы выдачи результатов вычислений. Задача должна быть сформулирована четко и однозначно. 4. Выбор метода решения задачи определяет численный математический метод, позволяющий свести решение к последовательному выполнению четырех математических действий. В большинстве случаев одна и та же задача может решаться несколькими численными методами, на данном этапе выбирается метод, который наилучшим образом обеспечивает выполнение требований поставленной задачи. 5. Разработка алгоритма решения поставленной задачи, т. е. структуризация, разбиение задачи на последовательность простых модулей, каждый из которых легко может быть реализован на языке программирования. Алгоритмом называется конечная последовательность строго очерченных правил, на основании исходных данных приводящих к однозначному решению задачи. Запись алгоритма должна производиться в наглядной и компактной форме, удобной для практического использования. Существует несколько способов для описания алгоритмов: словесный, операторный и др. Наибольшее распространение получила графическая запись структуры алгоритмов в виде так называемых блок-схем. 6. Составление программы – непосредственный перевод словесного алгоритма или его блок-схемы на выбранный язык программирования и ввод полученной программы в компьютер. Язык программирования представляет собой совокупность символов и правил их использования для описания процессов решения задач на ЭВМ. Текст программы вводиться в ЭВМ и обрабатывается специальной программой - транслятором. Транслятор переводит исходный текст программы на внутренний язык машины. 7. После ввода программы обычно выясняется, что где-то мы допустили просто синтаксические ошибки, где-то недоработали алгоритм, где-то не хватает исходных данных и т. д. Поэтому теперь начинается следующий этап - отладка программы , иными словами, устранение ошибок и неточностей, допущенных на предыдущих этапах. Часть ошибок формального характера, допущенных при написании программы, обнаруживает транслятор, производя синтаксический анализ. Транслятор выявляет ошибки и сообщает о них, указывая их тип и место в программе. Это ошибки времени трансляции или синтаксические ошибки. Программа, не имеющая ошибок времени трансляции и выполнения, может не дать верных результатов из-за логических ошибок в выбранном алгоритме, т. е. алгоритмических ошибок . После того как программа заработала, необходимо проверить ее на правильность работы, используя набор контрольных данных (в тех случаях, где это возможно). Так, например, если мы написали программу для расчета корней квадратного уравнения по заданным коэффициентам, то можем проверить работу программы, вводя такие коэффициенты, для которых предварительно были рассчитаны значения корней или их отсутствие. Это так называемый тестовый этап. После тестового этапа (если программа его выдержала), можно применять программу по назначению. Понятие алгоритма, его свойства. Формы записи алгоритмов Компьютер используется для решения лишь тех задач, для которых может быть составлен алгоритм. Любой алгоритм обладает следующими свойствами: 1. Детерминированность (определенность) означает, что набор указаний алгоритма должен быть однозначно понят любым исполнителем. Это свойство определяет однозначность результата работы алгоритма при заданных исходных данных. 2. Массовость алгоритма предполагает возможность варьирования исходных данных в некоторых пределах. Это свойство определяет пригодность использования алгоритма для решения множества конкретных задач определенного класса. 3. Результативность алгоритма означает, что для любых допустимых исходных данных он должен через конечное число шагов (или итераций) завершить свою работу. 4. Дискретность алгоритма означает возможность разбиения определенного алгоритмического процесса на отдельные элементарные этапы, возможность реализации которых человеком или компьютером не вызывает сомнения, а результат выполнения каждого элементарного этапа вполне определен и понятен. Таким образом, алгоритм дает возможность чисто механически решать любую конкретную задачу из некоторого класса однотипных задач. Существует несколько способов описания алгоритмов: 1. Словесный способ описания алгоритма отражает содержание выполняемых действий средствами естественного языка. К достоинствам этого способа описания следует отнести его общедоступность, а также возможность описывать алгоритм с любой степенью детализации. К главным недостаткам этого способа следует отнести достаточно громоздкое описание, отсутствие строгой формализации вследствие неоднозначности восприятия естественного языка. 2. Формально-словесный способ описания алгоритма основан на записи содержания выполняемых действий с использованием изобразительных возможностей языка математики, дополненного с целью указания необходимых пояснений средствами естественного языка. Данный способ, обладая всеми достоинствами словесного способа, вместе с тем более лаконичен, а значит, и более нагляден, имеет большую формализацию, однако тоже не является строго формальным. 3. Графический способ описания алгоритмов представляет собой изображение логико-математической структуры алгоритма, при котором все этапы процесса обработки данных представляются с помощью определенного набора геометрических фигур (блоков), имеющих строго определенную конфигурацию в соответствии с характером выполняемых действий. Алгоритмические языки для ПК Алгоритмические языки представляют собой средства описания данных и алгоритмов решения задач, они разработаны для составления программы пользователем. В настоящее время разработано большое количество языков программирования. Они отличаются друг от друга различными свойствами и областью применения. Класс машинно-зависимых языков представлен ассемблером. Язык ассемблера делает доступными все программно-управляемые компоненты компьютера, поэтому он применяется для написания программ, использующих специфику конкретной аппаратуры. Ассемблер – это наиболее трудоемкий язык программирования, и из-за его низкого уровня не удается построить средства отладки, которые существенно снизили бы трудоемкость разработки программ. Программирование на ассемблере требует от программиста детальных знаний технических компонент персонального компьютера. Ассемблер используется в основном для системного программирования. К классу машинно-ориентированных языков можно отнести языки группы С, С++ , Турбо С. Эти языки являются результатом попытки объединить возможности ассемблера со встроенными структурами данных. Класс универсальных языков программирования представлен наиболее широко (Бейсик, Фортран, Паскаль и др.). Исторически одним из самых распространенных языков стал Бейсик. Он прост в освоении и использовании. Написать на этом языке программу в 20-30 строк и получить результат можно за несколько минут. Для различных типов ПК разработаны различные версии языка Бейсик. Паскаль является одним из самых распространенных, хотя он и создавался как учебный. Использование в структуре языка специального кода позволило в 4-5 раз уменьшить длину текста программы и в 4-5 раз увеличить быстродействие программы. Версия Паскаля для ПК – Турбо-Паскаль – характеризуется такими важными особенностями, как полноэкранное редактирование и управление, графика, звуковое сопровождение и развитые связи с DOS. Система программирования на Турбо-Паскале является резидентной программой. Это позволяет пользователю вводить тексты программ и немедленно их выполнять, не тратя времени на компилирование. Язык Кобол был разработан специально для решения экономических задач. Он дает возможность составлять наиболее удобочитаемые программы, которые понятны и непрограммисту. В обработке данных сложной структуры Кобол бывает эффективнее Паскаля. Фирмой IBM в развитие идей Фортрана, Алгола и Кобола был предложен язык PL/1, который получил наибольшее распространение на больших машинах. PL/1 разрабатывался как универсальный язык программирования, поэтому он располагает большим набором средств обработки цифровой и текстовой информации. Однако эти достоинства делают его весьма сложным для обучения и использования. Класс проблемно-ориентированных языков программирования представлен языками Лого, РПГ и системой программирования GPSS. Язык Лого был создан с целью обучения школьников основам алгоритмического мышления и программирования. Лого – диалоговый процедурный язык, реализованный на основе интерпретатора с возможностью работы со списками и на их основе с текстами, оснащенными развитыми графическими средствами, которые доступны для детского восприятия. Этот язык реализован в большинстве ПК, применяемых в школах. РПГ, или генератор отчетов, представляет собой язык, включающий многие понятия и выражения, которые связаны с машинными методами составления отчетов и проектирования форм выходных документов. Язык используется главным образом для печати отчетов, записанных в одном или нескольких файлах баз данных. Система программирования ПЗЫЫ ориентирована на моделирование систем с помощью событий. В терминах этого языка легко описывается и исследуется класс моделей массового обслуживания и другие системы, работающие в реальном масштабе времени. В последние годы развивается объектно-ориентированный подход к программированию. Наиболее полно он реализован в языках Форт и СМОЛТОК. Форт сочетает в себе свойства операционной системы, интерпретатора и компилятора одновременно. Основной чертой языка является его открытость. Программист может легко добавлять новые операции, типы данных и определения основного языка. Форт позволяет поддерживать многозадачный режим работы, использует принцип одновременного доступа программ. К функциональным языкам программирования можно отнести языки Лиеп, Пролог И Снобол. Лиеп является инструментальным средством для построения программ с использованием методов искусственного интеллекта. Особенность этого языка заключается в удобстве динамического создания новых объектов. В качестве объектов могут выступать и сами исходные объекты. В настоящее время для Лиепа определились две сферы активного применения: проектирование систем искусственного интеллектаи анализ текстов на естественном языке. Нетрудно заметить, что языка, который был бы идеальным для всех случаев, не существует. Какой язык является лучшим, надо определять в каждой конкретной ситуации. Поэтому перед разработкой программы следует установить: 1. назначение разрабатываемой программы; 2. время выполнения программы; 3. ожидаемый размер программы – хватит ли объема памяти? 4. необходимость сопряжения программ с другими пакетами или программами; 5. возможность и необходимость переноса программы на другие типы компьютеров; 6. основные типы данных, с которыми будет работать программа; 7. характер и уровень использования в программе аппаратных средств (дисплея, клавиатуры, НМД и др.); 8. возможность и целесообразность использования стандартных библиотек программ. Системы программирования Даже при наличии десятков тысяч программ для IBMPC пользователям может потребоваться что-то такое, чего не делают ( или делают, но не так ) имеющиеся программы. В этих случаях следует использовать системы программирования, т.е. системы для разработки новых программ. Современные системы программирования для персональных компьютеров обычно предоставляют пользователю весьма мощные и удобные средства для разработки программ. В них входят:
Системы программирования, прежде всего, различаются, естественно, по тому, кокой язык программирования они реализуют. Среди программистов пишущих программы для персональных компьютеров, наибольшей популярностью пользуются языки Си, Си++, Паскаль, Бейсик Расчётная схема Аналитические зависимости При выполнении компьютерного расчета применяются следующие формулы: S = ( L – x) /0, 9 + 0, 9, где S – количество рядов Условные обозначения
Блок — схема алгоритма
Блок-схема алгоритма для расчета профиля пола по кривой наименьшего подъема зрительного зала: Список имён Программа 10 INPUTJ, Q, G, F, H, K, C, D1 20 Z = Q * SQR (J) 30 IF Z > 45 THEN Z = 45: GOTO 40 40 P = G * Z 50 X = F * P 60 E = X 65 I = (Z – E) /0.9 +0.9 70 y = H + K 80 A = y 90 y = (y + C) * (X + D1) / X 100 X = X + D1 110 R = y - A 120 PRINT "X="; X, "R="; R 130 IF X + D1 - Z <= 0 THEN 90 140 PRINT "Z="; Z, "E="; E, “I = “; I 150 END Контрольный пример N = 800 m = 1, 1 n = 0, 6 q = 0, 6 h = 1, 2 м ye = - 1,5 м c = 0, 12 м d = 0, 9 м Порядок работы на компьютере - Если Бейсик готов к работе, на экране выводится READY (готов), можно переходить к запуску программы. - Запуск выполняет команда RUN. Если программа храниться на устройстве файловой структуры, то загрузить ее в оперативную память и запустить на выполнение можно с помощью команды вида: RUN « имя файла » Выполнение программы начинается со строки с наименьшим номером. - Поскольку программа начинается с оператора INPUT, то на экране отображается знак вопроса - отражается запрос машины на ввод данных. Производим ввод данных через запятую. Для нашей задачи необходимо ввести 8 переменных. - Затем все решение идет последовательно, (все переменные вычисляются, друг за другом как приведено в программе). - Окончание программы. На экране выводится результат расчета. - По завершении работы с программой, используя команду SAVE «имя файла», можно скопировать ее из памяти ЭВМ в архивную память и сохранить там, в виде файла с заданным именем. Компьютерный расчёт RUN Результат расчета: X= R= X= 13.68 R= 0.221178 X= 14.58 R= 0.3438871 X= 15.48 R= 0.4740036 X= 16.38 R= 0.6110967 X= 17.28 R= 0.7547834 X= 18.18 R= 0.90472 X= 19.08 R= 1.060597 X= 19.98 R= 1.222135 X= 20.88 R= 1.389078 X= 21.78 R= 1.561193 X= 22.68 R= 1.738267 X= 23.58 R= 1.920103 X= 24.48 R= 2.10652 X= 25.38 R= 2.297348 X= 26.27999 R= 2.492431 X= 27.17999 R= 2.691623 X= 28.07999 R= 2.89479 X= 28.97999 R= 3.101802 X= 29.87 999 R= 3.312541 X= 30.77999 R= 3.526895 X= 31.67999 R= 3.744757 Z=32 E= 11.88 S=24 Заключение В своем реферате я рассмотрел основные характеристики и особенности языка программирования – Basic. На основе полученных знаний была составлена программа, позволяющая рассчитывать профиль пола по кривой наименьшего подъема зрительного зала. Мною была установлена необходимая последовательность арифметических и логических действий, с помощью которых может быть реализован выбранный численный метод. Алгоритм составлен с использованием алфавита языка программирования. Правильность составленной программы проверены контрольным примером, причем условия задачи поставлены таким образом, чтобы решение пошло по всем возможным вариантам, предусмотренным в программе. Это позволит обнаружить все возможные ошибки программирования. Поскольку мой пример был решен верно, и система не выдала сообщение о содержащейся в программе ошибке, то можно сделать вывод о правильности и эффективности составленной программы. Литература 1. Иванов М.Г , Автоматизированный расчёт размеров зала кинотеатра 1989г. 2. Уолш Б. Программирование на Бейсике. – М.: Радио и связь, 1988 г., перевод с английского Емелина И.В. 3. Геворкян Г.Х., Семенов В.Н. Бейсик – это просто. – М.: Радио и связь, 1989г. 4. Иванов М.Г. Архитектурно-строительная физика. - Челябинск, издательство ЧГТУ, 1997 г. 5. Иванов М.Г. Архитектурно-строительная физика: Учебное пособие для расчетов с применением ЭВМ.- Чгту, 1997 |