r3.dvi
|
|
|
- あいぞう きちや
- 7 years ago
- Views:
Transcription
1 / Lisp(2) Lisp 1.1 Lisp Lisp (1) (setq) (2) (3) setq defun (defun (... &aux...)...) ( ) ( nil ) [1]> (defun sisoku (x y &aux wa sa sho seki) (setq wa (+ x y)) (setq sa (- x y)) (setq sho (/ x y)) (setq seki (* x y)) (list wa sa sho seki)) SISOKU [2]> (sisoku 2 3) (5-1 2/3 6) loop (loop...) (return ) ( nil) [1]> (defun power (x n &aux result) (setq result 1) (loop (if (< n 1) (return result)) 1
2 (setq result (* x result)) (setq n (- n 1)))) POWER [2]> (power 2 3) 8 5 listlen? (read) --- S (print ) --- print >(print (a b c)) (A B C) print (A B C) print jijouloop C Java?? 1.2 listsum? ( ) ( ) + apply (apply ) CommonLisp (function ) ;;; # (function (lambda ( ) ) ;;; # (lambda...) [1]> (apply # + ( )) 10 funcall (funcall ) [1]> (funcall # ) 10 2
3 1.3 let &aux setq let ( ) (let (( 1 1) ( 2 2) ) ) let lambda let (funcall # (lambda ( 1 2 ) ) 1 2 ) 1.4 mapcar f (x 1 x 2 x n ) f mapcar (mapcar ) [1]> (mapcar # (lambda (x) (cons x x)) (a b c d)) ((A. A) (B. B) (C. C) (D. D)) 10 mapcar ( )xmapcar 11 mapcar a. addlist : (addlist 3 (1 2 3)) (4 5 6) b. listsum2 mapcar ( : setq ) 1.5 : ( Lisp S ) + * 2 (defun diff (exp var) (cond ((null exp) nil) ((numberp exp) 0) ((symbolp exp) (if (eq exp var) 1 0)) ((eq (car exp) +) (cons + (mapcar # (lambda (x) (diff x var)) (cdr exp)))) ((eq (car exp) *) (list + (list * (diff (cadr exp) var) (caddr exp)) (list * (cadr exp) (diff (caddr exp) var)))))) 3
4 (fg) = f g + fg [1]> (diff (+ (* x x) (* 2 x) 1) x) (+ (+ (* 1 X) (* X 1)) (+ (* 0 X) (* 2 1)) 0) [2]> (diff (* (* x x) (* x x)) x) (+ (* (+ (* 1 X) (* X 1)) (* X X)) (* (* X X) (+ (* 1 X) (* X 1)))) 1.6 eval eval Lisp > x x eval > (eval x) (x ) > x 7 (setq ) valuelist 2 Lisp 2.1 Lisp CLisp > S (defun xtoplevel (&aux e) (loop (princ "? ") (setq e (read)) (cond ((eq e end) (return)) (t (print (eval e)) (terpri))))) 4
5 ? S end ( ) >(xtoplevel)? (cons a b) (A. B)? (list a b c d e) (A B C D E)? end NIL > Lisp? 2.2 eval eval Lisp eval xeval x ((. ) (. )... (. )) Lisp ((X. A) (Y. 1) (Z A B C)) x a y 1 z? xassoc (defun xassoc (x l) (cond ((null l) nil) ((eq (caar l) x) (car l)) (t (xassoc x (cdr l))))) [1]> (setq l ((x. a) (y. 1) (z a b c))) ((X. A) (Y. 1) (Z A B C)) [2]> (xassoc x l) (X. A) [3]> (xassoc z l) (Z A B C) 5
6 xeval xeval ( eval ) (defun xeval (e a) (cond ((atom e) (cdr (xassoc e a))) (t error))) xeval S error xtoplevel eval (defun xtoplevel (&aux e) (loop (princ "? ") (setq e (read)) (cond ((eq e end) (return)) (t (print (xeval e *env*)) (terpri))))) *env* ( ) *...* Lisp [1]> (setq *env* ((x. a) (y. 1) (z a b c))) ((X. A) (Y. 1) (Z A B C)) [2]> (xtoplevel)? x A? z (A B C)...? t NIL? (quote a) ERROR t nil *env* (t. t) (nil. nil) quote quote xeval (defun xeval (e a) (cond ((atom e) (cdr (xassoc e a))) ((atom (car e)) (cond ((eq (car e) quote) (cadr e)) (t error))) (t error))) 6
7 e quote... e cadr (quote ) [1]> (setq *env* ((x. a) (y. 1) (z a b c) (t. t) (nil. nil))) ((X. A) (Y. 1) (Z A B C) (T. T) (NIL)) [2]> (xtoplevel)? t T? x A? (quote x) X? (quote (a b c)) (A B C)? (a b c) (A B C)? end NIL >?? (quote...) apply... apply xapply xeval (defun xeval (e a) (cond ((atom e) (cdr (xassoc e a))) ((atom (car e)) (cond ((eq (car e) quote) (cadr e)) (t (xapply (car e) (xevlis (cdr e) a) a)))) (t (xapply (car e) (xevlis (cdr e) a) a))))? 2 ( quote ) xevlis 7
8 (defun xevlis (l a) (cond ((null l) nil) (t (cons (xeval (car l) a) (xevlis (cdr l) a))))) > (xevlis (x z y) *env*) (A (A B C) 1)? xapply (defun xapply (f x a) (cond ((eq f car) (caar x)) ((eq f cdr) (cdar x)) ((eq f cons) (cons (car x) (cadr x))) ((eq f atom) (atom (car x))) ((eq f eq) (eq (car x) (cadr x))) (t error))) car x 1 ((car x)) car car car? S 5 >(xtoplevel)? (car (a b)) A? (cons x (y z)) (X Y Z)? (cons x (cons y (cons z nil))) (X Y Z)? (eq x x) T lambda Lisp? lambda xpairlis (defun xpairlis (x y a) (cond ((null x) a) ((null y) a) (t (cons (cons (car x) (car y)) (xpairlis (cdr x) (cdr y) a))))) a 1 b
9 [1]> (xpairlis (a b) (1 3) *env*) ((A. 1) (B. 3) (X. A) (Y. 1) (Z A B C) (T. T) (NIL)) xapply (defun xapply (f x a) (cond ((eq f car) (caar x)) ((eq f cdr) (cdar x)) ((eq f cons) (cons (car x) (cadr x))) ((eq f atom) (atom (car x))) ((eq f eq) (eq (car x) (cadr x))) ((atom f) error) ((eq (car f) lambda) (xeval (caddr f) (xpairlis (cadr f) x a))) (t error))) (lambda... (xapply (lambda (x) (cons x x)) (a)) (x. a) a y (cons x x)? [1]> (xtoplevel)? ((lambda (x) (cons (cons x nil) nil)) a) ((A)) defun lambda? xapply (atom f) error ((atom f) (xapply (cdr (xassoc f a)) x a)) xapply xtoplevel defun! (defun xtoplevel (&aux e) (loop (princ "? ") (setq e (read)) (cond ((eq e end) (return)) ((and (listp e) (eq (car e) defun)) (setq *env* (cons (cons (cadr e) (cons lambda (cddr e))) *env*))) (t (print (xeval e *env*)) (terpri))))) 9
10 S defun ( lambda ) [1]> (xtoplevel)? (defun f (x y) (cons y x))? (f aa bb) (BB. AA) cond? 1 cond! xeval quote cond (defun xeval (e a) (cond ((atom e) (cdr (xassoc e a))) ((atom (car e)) (cond ((eq (car e) quote) (cadr e)) ((eq (car e) cond) (xevcon (cdr e) a)) (t (xapply (car e) (xevlis (cdr e) a) a)))) (t (xapply (car e) (xevlis (cdr e) a) a)))) xevcon (defun xevcon (l a) (cond ((null l) nil) ((xeval (caar l) a) (xeval (cadar l) a)) (t (xevcon (cdr l) a))))... OK Lisp >(xtoplevel)? (defun g (l) (cond (l (cons (cons (car l) (car l)) (g (cdr l)))) (t nil)))? (g (a b c)) ((A. A) (B. B) (C. C))? end NIL 10
11 (null l) null xeval! Lisp? 8 Lisp ( 50 ) 9 CommonLisp Lisp A: if then else B: loop return loop (while ) C: cond D: E: defun setq 1 if loop print F: Lisp! 1 G: CommonLisp ( ) lambda Lisp (?) H: lambda if ( nlambda ) ndefun I: lambda + list 1 ( llambda ) ldefun J: 2 1 ( flambda ) fdefun K: ( mlambda ) defmacro (defmacro if (x y z) (list cond (list x y) (list t z))) (if (null l) a b) 1 setq (!) 2 (numberp ) 2 11
12 (cond ((null l) a) (t b))... if (!) 12
Microsoft PowerPoint - 2-LispProgramming-full
2013 年 5 月 31 日 Lisp プログラミング入門 西田豊明 Copyright 2013 Toyoaki Nishida All Rights Reserved. 今回あらすじ 1. Lisp の実践的な使い方を学習する. 2. Lisp インタープリタの動かし方, 電卓的使い方, 関数定義, 条件分岐,S 式の基本操作, プログラミング手法, プロトタイピング法などを中心に解説する.
( ) [2] H 4 4! H 4 4! (5 4 3 )= = Fortran C 0 #include <stdio.h> 1 #include
J.JSSAC (2006) Vol. 12, No. 3, pp. 3-16 IIJ 2000 8 bit TULIPS KING KISS WINK 1 ( ) Ackermann GC [1] CPU 6502 [email protected] c 2006 Japan Society for Symbolic and Algebraic Computation 4 12 3 2006 (1943-05-16
つくって学ぶプログラミング言語 RubyによるScheme処理系の実装
Ruby Scheme 2013-04-16 ( )! SICP *1 ;-) SchemeR SICP MIT * 1 Structure and Interpretaion of Computer Programs 2nd ed.: 2 i SchemeR Ruby Ruby Ruby Ruby & 3.0 Ruby ii https://github.com/ichusrlocalbin/scheme_in_ruby
1. A0 A B A0 A : A1,...,A5 B : B1,...,B
1. A0 A B A0 A : A1,...,A5 B : B1,...,B12 2. 3. 4. 5. A0 A, B Z Z m, n Z m n m, n A m, n B m=n (1) A, B (2) A B = A B = Z/ π : Z Z/ (3) A B Z/ (4) Z/ A, B (5) f : Z Z f(n) = n f = g π g : Z/ Z A, B (6)
1. A0 A B A0 A : A1,...,A5 B : B1,...,B12 2. 5 3. 4. 5. A0 (1) A, B A B f K K A ϕ 1, ϕ 2 f ϕ 1 = f ϕ 2 ϕ 1 = ϕ 2 (2) N A 1, A 2, A 3,... N A n X N n X N, A n N n=1 1 A1 d (d 2) A (, k A k = O), A O. f
連立1次方程式Ax=bの解法:公式にしたがって解くのは,計算量大
Common Lisp プログラミング入門 概要 Lisp は記号の構造的な表現である S 式を操作するインタープリタ方式を基調とするプログラミング言語である. ここでは, 思考のツールとしての Lisp を強調した解説を行う.. Lisp のしくみ Lisp で中心となるのは,S 式 (Symbolic Expression) と呼ばれる記号の構造的な表現である.Lisp ユーザはインタープリタを使って,S
parser.y 3. node.rb 4. CD-ROM
1. 1 51 2. parser.y 3. node.rb 4. CD-ROM 1 10 2 i 0 i 10 " i i+1 3 for(i = 0; i
Jacques Garrigue
Jacques Garrigue Garrigue 1 Garrigue 2 $ print_lines () > for i in $1; do > echo $i > done $ print_lines "a b c" a b c Garrigue 3 Emacs Lisp (defun print-lines (lines) (dolist (str lines) (insert str)
離散数理工学 第 2回 数え上げの基礎:漸化式の立て方
2 [email protected] 2015 10 20 2015 10 18 15:29 ( ) (2) 2015 10 20 1 / 45 ( ) 1 (10/6) ( ) (10/13) 2 (10/20) 3 ( ) (10/27) (11/3) 4 ( ) (11/10) 5 (11/17) 6 (11/24) 7 (12/1) 8 (12/8) ( ) (2) 2015 10 20
VDM-SL VDM VDM-SL Toolbox VDM++ Toolbox 1 VDM-SL VDM++ Web bool
VDM-SL VDM++ 23 6 28 VDM-SL Toolbox VDM++ Toolbox 1 VDM-SL VDM++ Web 2 1 3 1.1............................................... 3 1.1.1 bool......................................... 3 1.1.2 real rat int
Emacs ML let start ::= exp (1) exp ::= (2) fn id exp (3) ::= (4) (5) ::= id (6) const (7) (exp) (8) let val id = exp in
Emacs, {l06050,sasano}@sic.shibaura-it.ac.jp Eclipse Visual Studio Standard ML Haskell Emacs 1 Eclipse Visual Studio variable not found LR(1) let Emacs Emacs Emacs Java Emacs JDEE [3] JDEE Emacs Java 2
haskell.gby
Haskell 1 2 3 Haskell ( ) 4 Haskell Lisper 5 Haskell = Haskell 6 Haskell Haskell... 7 qsort [8,2,5,1] [1,2,5,8] "Hello, " ++ "world!" "Hello, world!" 1 + 2 div 8 2 (+) 1 2 8 div 2 3 4 map even [1,2,3,4]
untitled
II 4 Yacc Lex 2005 : 0 1 Yacc 20 Lex 1 20 traverse 1 %% 2 [0-9]+ { yylval.val = atoi((char*)yytext); return NUM; 3 "+" { return + ; 4 "*" { return * ; 5 "-" { return - ; 6 "/" { return / ; 7 [ \t] { /*
平成27年度三菱重工グループ保険 フルガードくん(シニア)
TEL 0120-004-443 TEL 045-200-6560 TEL 042-761-2328 TEL 0120-539-022 TEL 042-762-0535 TEL 052-565-5211 TEL 077-552-9161 TEL 0120-430-372 TEL 0120-45-9898 TEL 0120-63-0051 TEL 0120-252-892 TEL 083-266-8041
N88 BASIC 0.3 C: My Documents 0.6: 0.3: (R) (G) : enterreturn : (F) BA- SIC.bas 0.8: (V) 0.9: 0.5:
BASIC 20 4 10 0 N88 Basic 1 0.0 N88 Basic..................................... 1 0.1............................................... 3 1 4 2 5 3 6 4 7 5 10 6 13 7 14 0 N88 Basic 0.0 N88 Basic 0.1: N88Basic
Microsoft PowerPoint - IntroAlgDs-05-2.ppt
アルゴリズムとデータ構造入門 2005 年 10 月 11 日 アルゴリズムとデータ構造入門 1. 手続きによる抽象の構築 1.1 プログラムの要素 奥乃 博 1. TUT Schemeが公開されました. Windowsは動きます. Linux, Cygwin はうまく行かず. 調査中. 2. 随意課題 7の追加 友人の勉学を助け,TAの手伝いをする. 支援した内容を毎回のレポート等で詳細に報告.
PL : pl0 ( ) 1 SableCC ( sablecc ) 1.1 sablecc sablecc Étienne Gagnon [1] Java sablecc sablecc ( ) Visitor DepthFirstAdapter 1 (Depth
PL0 2007 : 2007.05.29 pl0 ( ) 1 SableCC ( sablecc ) 1.1 sablecc sablecc Étienne Gagnon [1] Java sablecc sablecc () Visitor DepthFirstAdapter 1 (Depth First traversal) ( ) (breadth first) 2 sablecc 1.2
Microsoft PowerPoint - IntroAlgDs pptx
アルゴリズムとデータ構造入門 -14 2012 年 1 月 8 日 大学院情報学研究科知能情報学専攻 http://winnie.kuis.kyoto-u.ac.jp/~okuno/lecture/11/introalgds/ [email protected],[email protected] if mod( 学籍番号の下 3 桁,3) 0 if mod( 学籍番号の下 3 桁,3) 1 if
r1.dvi
Ruby 2009.9.7 1 ( ) --- ( ( ) ( ) 1 --- ( ) 1 ( ) (?) IT 7K( )?? ( ) ( )? IT ( ) --- ( ) 1 ( ) --- ( ) (?) 2-3% Top-Level ICT Professional 5% ICT Professional 10% 100% 50% 20% Devl. Experiment Adv. ICT
ML Edinburgh LCF ML Curry-Howard ML ( ) ( ) ( ) ( ) 1
More Logic More Types ML/OCaml GADT Jacques Garrigue ( ) Jacques Le Normand (Google) Didier Rémy (INRIA) @garriguejej ocamlgadt ML Edinburgh LCF ML Curry-Howard ML ( ) ( ) ( ) ( ) 1 ( ) ML type nebou and
第10回 コーディングと統合(WWW用).PDF
10 January 8, 2004 algorithm algorithm algorithm (unit testing) (integrated testing) (acceptance testing) Big-Bang (incremental development) (goto goto DO 50 I=1,COUNT IF (ERROR1) GO TO 60 IF (ERROR2)
Lesson 1 1 EXVBA2000 Lesson01 Lesson01.xls 2
Excel2000VBA L e a r n i n g S c h o o l 1 Lesson 1 1 EXVBA2000 Lesson01 Lesson01.xls 2 3 Module1:(General)- Public Sub () Dim WS As Object Dim DiffDate As Integer Dim MaxRows As Integer, CopyRows As Integer
Parametric Polymorphism
ML 2 2011/04/19 Parametric Polymorphism Type Polymorphism ? : val hd_int : int list - > int val hd_bool : bool list - > bool val hd_i_x_b : (int * bool) list - > int * bool etc. let hd_int = function (x
lifedesign_contest_No3
1 3 5 Apple Developer Program 5 AWS 8 Raspberry Pi 14 18 19 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sns:createplatformendpoint" ], "Resource": [ ] ] #
1153006 JavaScript try-catch JavaScript JavaScript try-catch try-catch try-catch try-catch try-catch 1 2 2 try-catch try-catch try-catch try-catch 25 1153006 26 2 12 1 1 1 2 3 2.1... 3 2.1.1... 4 2.1.2
Microsoft PowerPoint - IntroAlgDs pptx
アルゴリズムとデータ構造入門 -11 2013 年 12 月 17 日 大学院情報学研究科知能情報学専攻 http://winnie.kuis.kyotou.ac.jp/~okuno/lecture/13/introalgds/ [email protected] if mod( 学籍番号の下 3 桁,3) 0 if mod( 学籍番号の下 3 桁,3) 1 if mod( 学籍番号の下 3
Pascal Pascal Free Pascal CPad for Pascal Microsoft Windows OS Pascal
Pascal Pascal Pascal Free Pascal CPad for Pascal Microsoft Windows OS 2010 10 1 Pascal 2 1.1.......................... 2 1.2.................. 2 1.3........................ 3 2 4 2.1................................
ex01.dvi
,. 0. 0.0. C () /******************************* * $Id: ex_0_0.c,v.2 2006-04-0 3:37:00+09 naito Exp $ * * 0. 0.0 *******************************/ #include int main(int argc, char **argv) { double
# let st1 = {name = "Taro Yamada"; id = };; val st1 : student = {name="taro Yamada"; id=123456} { 1 = 1 ;...; n = n } # let string_of_student {n
II 6 / : 2001 11 21 (OCaml ) 1 (field) name id type # type student = {name : string; id : int};; type student = { name : string; id : int; } student {} type = { 1 : 1 ;...; n : n } { 1 = 1 ;...; n = n
C言語によるアルゴリズムとデータ構造
Algorithms and Data Structures in C 4 algorithm List - /* */ #include List - int main(void) { int a, b, c; int max; /* */ Ÿ 3Ÿ 2Ÿ 3 printf(""); printf(""); printf(""); scanf("%d", &a); scanf("%d",
yacc.dvi
2017 c 8 Yacc Mini-C C/C++, yacc, Mini-C, run,, Mini-C 81 Yacc Yacc, 1, 2 ( ), while ::= "while" "(" ")" while yacc 1: st while : lex KW WHILE lex LPAREN expression lex RPAREN statement 2: 3: $$ = new
1.ppt
/* * Program name: hello.c */ #include int main() { printf( hello, world\n ); return 0; /* * Program name: Hello.java */ import java.io.*; class Hello { public static void main(string[] arg)
ex01.dvi
,. 0. 0.0. C () /******************************* * $Id: ex_0_0.c,v.2 2006-04-0 3:37:00+09 naito Exp $ * * 0. 0.0 *******************************/ #include int main(int argc, char **argv) double
コンピュータ概論
4.1 For Check Point 1. For 2. 4.1.1 For (For) For = To Step (Next) 4.1.1 Next 4.1.1 4.1.2 1 i 10 For Next Cells(i,1) Cells(1, 1) Cells(2, 1) Cells(10, 1) 4.1.2 50 1. 2 1 10 3. 0 360 10 sin() 4.1.2 For
num2.dvi
[email protected] http://kanenko.a.la9.jp/ 16 32...... h 0 h = ε () 0 ( ) 0 1 IEEE754 (ieee754.c Kerosoft Ltd.!) 1 2 : OS! : WindowsXP ( ) : X Window xcalc.. (,.) C double 10,??? 3 :, ( ) : BASIC,
11042 計算機言語7回目 サポートページ:
11042 7 :https://goo.gl/678wgm November 27, 2017 10/2 1(print, ) 10/16 2(2, ) 10/23 (3 ) 10/31( ),11/6 (4 ) 11/13,, 1 (5 6 ) 11/20,, 2 (5 6 ) 11/27 (7 12/4 (9 ) 12/11 1 (10 ) 12/18 2 (10 ) 12/25 3 (11
: Shift-Return evaluate 2.3 Sage? Shift-Return abs 2 abs? 2: abs 3: fac
Bulletin of JSSAC(2012) Vol. 18, No. 2, pp. 161-171 : Sage 1 Sage Mathematica Sage (William Stein) 2005 2 2006 2 UCSD Sage Days 1 Sage 1.0 4.7.2 1) Sage Maxima, R 2 Sage Firefox Internet Explorer Sage
fp.gby
1 1 2 2 3 2 4 5 6 7 8 9 10 11 Haskell 12 13 Haskell 14 15 ( ) 16 ) 30 17 static 18 (IORef) 19 20 OK NG 21 Haskell (+) :: Num a => a -> a -> a sort :: Ord a => [a] -> [a] delete :: Eq a => a -> [a] -> [a]
導入基礎演習.ppt
Multi-paradigm Programming Functional Programming Scheme Haskell ML Scala X10 KL1 Prolog Declarative Lang. C Procedural Lang. Java C++ Python Object-oriented Programming / (root) bin home lib 08 09
(1) (2) (3) (4) (1) (a) (b) (c) (d) kg 9.8 N 5.0 kg 19.6 m/s kg m/s 8.0kg (2) 1 r=1.0m ABC QA =1
2/ 土 28 6 11 10:30 11:20 似通った科目名がありますので注意してください. 受験許可されていない科目を解答した場合は無効 整理番号と科目コードは受験許可証とよく照合し正確に記入 30 10 11 12 00011 00016 2 01101 02607 4 (1) (2) (3) (4) 02703 (1) (a) (b) (c) (d) 1 5.0 kg 9.8 N 5.0
r07.dvi
19 7 ( ) 2019.4.20 1 1.1 (data structure ( (dynamic data structure 1 malloc C free C (garbage collection GC C GC(conservative GC 2 1.2 data next p 3 5 7 9 p 3 5 7 9 p 3 5 7 9 1 1: (single linked list 1
ohp07.dvi
19 7 ( ) 2019.4.20 1 (data structure) ( ) (dynamic data structure) 1 malloc C free 1 (static data structure) 2 (2) C (garbage collection GC) C GC(conservative GC) 2 2 conservative GC 3 data next p 3 5
Excel ではじめる数値解析 サンプルページ この本の定価 判型などは, 以下の URL からご覧いただけます. このサンプルページの内容は, 初版 1 刷発行時のものです.
Excel ではじめる数値解析 サンプルページ この本の定価 判型などは, 以下の URL からご覧いただけます. http://www.morikita.co.jp/books/mid/009631 このサンプルページの内容は, 初版 1 刷発行時のものです. Excel URL http://www.morikita.co.jp/books/mid/009631 i Microsoft Windows
compiler-text.dvi
2018.4 1 2 2.1 1 1 1 1: 1. (source program) 2. (object code) 3. 1 2.2 C if while return C input() output() fun var ( ) main() C (C-Prime) C A B C 2.3 Pascal P 1 C LDC load constant LOD load STR store AOP
: : : TSTank 2
Java (8) 2008-05-20 Lesson6 Lesson5 Java 1 Lesson 6: TSTank1, TSTank2, TSTank3 java 2 car1 car2 Car car1 = new Car(); Car car2 = new Car(); car1.setcolor(red); car2.setcolor(blue); car2.changeengine(jet);
