Program1.pas(39) : Параметр цикла for в PascalABC.NET должен описываться в заголовке цикла - Pascal ABC
Формулировка задачи:
Program1.pas(39) : Параметр цикла for в PascalABC.NET должен описываться в заголовке цикла.
() : Внутренняя ошибка компилятора в модуле [pabcnetc.exe] :'System.Exception: System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.find_operator(String name, expression_node left, expression_node right, location loc, Boolean no_search_in_extension_methods)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.visit(bin_expr _bin_expr)
в PascalABCCompiler.TreeConverter.returner.visit(expression expr)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.visit(bin_expr _bin_expr)
в PascalABCCompiler.TreeConverter.returner.visit(expression expr)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.visit(bin_expr _bin_expr)
в PascalABCCompiler.TreeConverter.returner.visit(expression expr)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.visit(assign _assign)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.convert_strong(statement st)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.visit(statement_list _statement_list)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.convert_strong(statement st)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.visit(while_node _while_node)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.convert_strong(statement st)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.visit(statement_list _statement_list)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.convert_strong(statement st)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.visit_program_code(statement_list program_code)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.visit(block _block)
в PascalABCCompiler.TreeConverter.syntax_tree_visitor.visit(program_module _program_module)
в PascalABCCompiler.TreeConverter.SyntaxTreeToSemanticTreeConverter.CompileInterface(compilation_unit SyntaxUnit, unit_node_list UsedUnits, List`1 ErrorsList, List`1 WarningsList, SyntaxError parser_error, Hashtable bad_nodes, using_namespace_list namespaces, Dictionary`2 docs, Boolean debug, Boolean debugging)
в PascalABCCompiler.Compiler.CompileUnit(unit_node_list Units, unit_or_namespace SyntaxUsesUnit)
в PascalABCCompiler.Compiler.Compile()'.
В чем проблема?
Решение задачи: «Program1.pas(39) : Параметр цикла for в PascalABC.NET должен описываться в заголовке цикла»
textual
Листинг программы
Program Recur; Var y0, y1, y, a, b: real; m,i: Integer; Begin WriteLn('Пользуясь рекуррентной формулой y(i)=cos(y(i-1))+sin*sin*(y(i-2))'); WriteLn('где i=2,3,4,...,m для заданного значения n вычислить y(m),'); WriteLn('если известны y(0), y(1).'); Write('Задайте значения y(0), y(1) -> '); ReadLn(y0,y1); Write('Задайте значение m (m>2)-> '); ReadLn(m); a:=y0; b:=y1; {Решение с использованием управляющей структуры While-Do} y:=cos(b)+sqr(sin(a)); i:=3; While i<=m Do Begin a:=b; b:=y; y:=cos(b)+sqr(sin(a)); i:=i+1; End; WriteLn('While: значение элемента последовательности y(',m,')=',y:0:2); {Решение с использованием управляющей структуры Repeat-Until} a:=y0; b:=y1; y:=cos(b)+sqr(sin(a)); i:=3; Repeat a:=b; b:=y; y:=cos(b)+sqr(sin(a)); i:=i+1; Until i>m; WriteLn('Repeat: значение элемента последовательности y(',m,')=',y:0:2); {Решение с использованием управляющей структуры For-To-Do} a:=y0; b:=y1; y:=cos(b)+sqr(sin(a)); For var j:=3 To m Do Begin a:=b; b:=y; y:=cos(b)+sqr(sin(a)); End; WriteLn('For: значение элемента последовательности y(',m,')=',y:0:2); End.
Объяснение кода листинга программы
- Программа использует рекуррентную формулу для вычисления значений элементов последовательности y(i).
- Ввод значений начальных элементов y(0) и y(1).
- Ввод значения m, определяющего количество элементов последовательности.
- Вычисление начального значения y на основе y(0) и y(1).
- Использование цикла While-Do для вычисления последующих элементов последовательности.
- Использование цикла Repeat-Until для вычисления последующих элементов последовательности.
- Использование цикла For-To-Do для вычисления последующих элементов последовательности.
- Вывод значений последних вычисленных элементов последовательности для каждого из использованных циклов.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д