Компьютерные игры в большинстве имеют трехмерный графический интерфейс. примеры игр, где компьютерная графика достаточно сложное, но дружественный пользовательский интерфейс.. мне надо сделать информатику и это . 10 . и заранее за ответ.
Средствами PascalABC.NET 3.2 эта задача решается очень просто.
1. Короткое решение, оставляющее в недоумении: а для чего тут было использовать двусвязный список? ответ: потому что таково задание!
// PascalABC.NET 3.2, сборка 1439 от 09.05.2017 // Внимание! Если программа не работает, обновите версию!
function IsFib(n:integer):boolean; begin if (n=1) or (n=2) then Result:=true else begin Result:=false; (var n1, var n2):=(1,2); var Fib:integer; repeat Fib:=n1+n2; if Fib=n then begin Result:=true; break end; (n2,n1):=(Fib,n2) until Fib>n end; end;
begin var L:=ReadSeqInteger('->',ReadInteger('n=')).ToLinkedList; L:=L.Where(x->not IsFib(x)).ToLinkedList; L.Println end.
2. Несколько более длинное решение для желающих немного порулить удалением узлов.
Функция остается той же, а изменения делаются в главной программе.
begin var L:=ReadSeqInteger('->',ReadInteger('n=')).ToLinkedList; var a:=L.Where(x->IsFib(x)).ToArray; // список значений для удаления foreach var t in a do L.Remove(t); // собственно удаление узлов L.Println end.
3. Бонус. Как это сделать без двусвязного списка (опять же, основная программа).
begin var a:=ReadSeqInteger('->',ReadInteger('n=')) .Where(x->not IsFib(x)).ToArray; a.Println end.
4,8(59 оценок)
Ответ:
02.02.2022
// PascalABC.NET 3.2, сборка 1439 от 09.05.2017 // Внимание! Если программа не работает, обновите версию!
begin Writeln('*** Исходный массив [10x10] ***'); var q:=MatrRandom(10,10,-30,30); q.Println(4); Writeln(4*q.ColCount*'-'); // #1 Writeln('S=',q.Rows.SelectMany(x->x).Where(x->(x>1) and (x<18)).Sum); // #2, #3 var s:=q.ElementsWithIndexes; // #2 Writeln('Ненулевые элементы'); s.Where(x->x[2]<>0).Foreach(x->Write('[',x[0]+1,',',x[1]+1,'] ')); Writeln; // #3 Write('Первый максимальный отрицательный элемент: '); var m:=s.MaxBy(x->x[2]); Writeln('q[',m[0]+1,',',m[1]+1,']=',m[2]) end.
Crysis, Battlefield, PUBG, Rainbow Six Siege