Created
March 26, 2012 19:32
-
-
Save oxitnik/2208984 to your computer and use it in GitHub Desktop.
fucking lisp lab
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;1 | |
(defun calc-poly (x) | |
(+ (* (- (* (+ (* (- (* 2 x) 3) x) 4) x) 5 ) x) 6)) | |
;2 | |
(defun NULL1 (a) | |
(if a nil T)) | |
(defun CADDR1 (lst) | |
(car (cdr (cdr lst)))) | |
(defun LIST1 (a1 a2 a3) | |
(cons a1 (cons a2 (cons a3 ())) )) | |
;3 | |
(defun add-if-not-exists (el lst) | |
(if | |
(every 'NULL (mapcar (lambda (x) (eql el x)) lst )) | |
(append lst (list el)) | |
lst | |
) | |
) | |
;4 | |
(defun capital (country) | |
(cond | |
((equalp country "Afghanistan") "Kabul") | |
((equalp country "Albania") "Tirana") | |
((equalp country "Algeria") "Algiers") | |
((equalp country "Andorra") "Andorra la Vella") | |
((equalp country "Angola") "Luanda") | |
((equalp country "Antigua and Barbuda") "St. John's") | |
((equalp country "Argentina") "Buenos Aires") | |
((equalp country "Armenia") "Yerevan") | |
((equalp country "Australia") "Canberra") | |
((equalp country "Austria") "Vienna") | |
((equalp country "Azerbaijan") "Baku") | |
((equalp country "The Bahamas") "Nassau") | |
((equalp country "Bahrain") "Manama") | |
((equalp country "Bangladesh") "Dhaka") | |
((equalp country "Barbados") "Bridgetown") | |
((equalp country "Belarus") "Minsk") | |
((equalp country "Belgium") "Brussels") | |
((equalp country "Belize") "Belmopan") | |
((equalp country "Benin") "Porto-Novo") | |
((equalp country "Bhutan") "Thimphu") | |
((equalp country "Bolivia") "La Paz") | |
((equalp country "Bosnia and Herzegovina") "Sarajevo") | |
((equalp country "Botswana") "Gaborone") | |
((equalp country "Brazil") "Brasilia") | |
((equalp country "Brunei") "Bandar Seri Begawan") | |
((equalp country "Bulgaria") "Sofia") | |
((equalp country "Burkina Faso") "Ouagadougou") | |
((equalp country "Burundi") "Bujumbura") | |
((equalp country "Cambodia") "Phnom Penh") | |
((equalp country "Cameroon") "Yaounde") | |
((equalp country "Canada") "Ottawa") | |
((equalp country "Cape Verde") "Praia") | |
((equalp country "Central African Republic") "Bangui") | |
((equalp country "Chad") "N'Djamena") | |
((equalp country "Chile") "Santiago") | |
((equalp country "China") "Beijing") | |
((equalp country "Colombia") "Bogota") | |
((equalp country "Comoros") "Moroni") | |
((equalp country "Congo, Democratic Republic of the") "Kinshasa") | |
((equalp country "Congo, Republic of the") "Brazzaville") | |
((equalp country "Costa Rica") "San Jose") | |
((equalp country "Cote d'Ivoire") "Yamoussoukro") | |
((equalp country "Croatia") "Zagreb") | |
((equalp country "Cuba") "Havana") | |
((equalp country "Cyprus") "Nicosia") | |
((equalp country "Czech Republic") "Prague") | |
((equalp country "Denmark") "Copenhagen") | |
((equalp country "Djibouti") "Djibouti") | |
((equalp country "Dominica") "Roseau") | |
((equalp country "Dominican Republic") "Santo Domingo") | |
((equalp country "East Timor") "Dili") | |
((equalp country "Ecuador") "Quito") | |
((equalp country "Egypt") "Cairo") | |
((equalp country "El Salvador") "San Salvador") | |
((equalp country "Equatorial Guinea") "Malabo") | |
((equalp country "Eritrea") "Asmara") | |
((equalp country "Estonia") "Tallinn") | |
((equalp country "Ethiopia") "Addis Ababa") | |
((equalp country "Fiji") "Suva") | |
((equalp country "Finland") "Helsinki") | |
((equalp country "France") "Paris") | |
((equalp country "Gabon") "Libreville") | |
((equalp country "The Gambia") "Banjul") | |
((equalp country "Georgia") "Tbilisi") | |
((equalp country "Germany") "Berlin") | |
((equalp country "Ghana") "Accra") | |
((equalp country "Greece") "Athens") | |
((equalp country "Grenada") "St. George's") | |
((equalp country "Guatemala") "Guatemala City") | |
((equalp country "Guinea") "Conakry") | |
((equalp country "Guinea") "Bissau - Bissau") | |
((equalp country "Guyana") "Georgetown") | |
((equalp country "Haiti") "Port-au-Prince") | |
((equalp country "Honduras") "Tegucigalpa") | |
((equalp country "Hungary") "Budapest") | |
((equalp country "Iceland") "Reykjavik") | |
((equalp country "India") "New Delhi") | |
((equalp country "Indonesia") "Jakarta") | |
((equalp country "Iran") "Tehran") | |
((equalp country "Iraq") "Baghdad") | |
((equalp country "Ireland") "Dublin") | |
((equalp country "Israel") "Jerusalem") | |
((equalp country "Italy") "Rome") | |
((equalp country "Jamaica") "Kingston") | |
((equalp country "Japan") "Tokyo") | |
((equalp country "Jordan") "Amman") | |
((equalp country "Kazakhstan") "Astana") | |
((equalp country "Kenya") "Nairobi") | |
((equalp country "Kiribati") "Bairiki") | |
((equalp country "Korea, North") "Pyongyang") | |
((equalp country "Korea, South") "Seoul") | |
((equalp country "Kosovo") "Pristina") | |
((equalp country "Kuwait") "Kuwait City") | |
((equalp country "Kyrgyzstan") "Bishkek") | |
((equalp country "Laos") "Vientiane") | |
((equalp country "Latvia") "Riga") | |
((equalp country "Lebanon") "Beirut") | |
((equalp country "Lesotho") "Maseru") | |
((equalp country "Liberia") "Monrovia") | |
((equalp country "Libya") "Tripoli") | |
((equalp country "Liechtenstein") "Vaduz") | |
((equalp country "Lithuania") "Vilnius") | |
((equalp country "Luxembourg") "Luxembourg") | |
((equalp country "Macedonia") "Skopje") | |
((equalp country "Madagascar") "Antananarivo") | |
((equalp country "Malawi") "Lilongwe") | |
((equalp country "Malaysia") "Kuala Lumpur") | |
((equalp country "Maldives") "Male") | |
((equalp country "Mali") "Bamako") | |
((equalp country "Malta") "Valletta") | |
((equalp country "Marshall Islands") "Majuro") | |
((equalp country "Mauritania") "Nouakchott") | |
((equalp country "Mauritius") "Port Louis") | |
((equalp country "Mexico") "Mexico City") | |
((equalp country "Federated States of Micronesia") "Palikir") | |
((equalp country "Moldova") "Chisinau") | |
((equalp country "Monaco") "Monaco") | |
((equalp country "Mongolia") "Ulaanbaatar") | |
((equalp country "Montenegro") "Podgorica") | |
((equalp country "Morocco") "Rabat") | |
((equalp country "Mozambique") "Maputo") | |
((equalp country "Myanmar") "Naypyidaw") | |
((equalp country "Namibia") "Windhoek") | |
((equalp country "Nauru") "Yaren District") | |
((equalp country "Nepal") "Kathmandu") | |
((equalp country "The Netherlands") "Amsterdam") | |
((equalp country "New Zealand") "Wellington") | |
((equalp country "Nicaragua") "Managua") | |
((equalp country "Niger") "Niamey") | |
((equalp country "Nigeria") "Abuja") | |
((equalp country "Norway") "Oslo") | |
((equalp country "Oman") "Muscat") | |
((equalp country "Pakistan") "Islamabad") | |
((equalp country "Palau") "Melekeok on Babelthuap Island") | |
((equalp country "Panama") "Panama City") | |
((equalp country "Papua New Guinea") "Port Moresby") | |
((equalp country "Paraguay") "Asuncion") | |
((equalp country "Peru") "Lima") | |
((equalp country "Philippines") "Manila") | |
((equalp country "Poland") "Warsaw") | |
((equalp country "Portugal") "Lisbon") | |
((equalp country "Qatar") "Doha") | |
((equalp country "Romania") "Bucharest") | |
((equalp country "Russia") "Moscow") | |
((equalp country "Rwanda") "Kigali") | |
((equalp country "Samoa") "Apia") | |
((equalp country "San Marino") "San Marino") | |
((equalp country "Sao Tome and Principe") "Sao Tome") | |
((equalp country "Saudi Arabia") "Riyadh") | |
((equalp country "Senegal") "Dakar") | |
((equalp country "Serbia") "Belgrade") | |
((equalp country "Seychelles") "Victoria") | |
((equalp country "Sierra Leone") "Freetown") | |
((equalp country "Singapore") "Singapore") | |
((equalp country "Slovakia") "Bratislava") | |
((equalp country "Slovenia") "Ljubljana") | |
((equalp country "Solomon Islands") "Honiara") | |
((equalp country "Somalia") "Mogadishu") | |
((equalp country "South Africa") "Pretoria") | |
((equalp country "South Sudan") "Juba") | |
((equalp country "Spain") "Madrid") | |
((equalp country "Sri Lanka") "Colombo") | |
((equalp country "Sudan") "Khartoum") | |
((equalp country "Suriname") "Paramaribo") | |
((equalp country "Swaziland") "Mbabane") | |
((equalp country "Sweden") "Stockholm") | |
((equalp country "Switzerland") "Bern") | |
((equalp country "Syria") "Damascus") | |
((equalp country "Taiwan") "Taipei") | |
((equalp country "Tajikistan") "Dushanbe") | |
((equalp country "Tanzania") "Dodoma") | |
((equalp country "Thailand") "Bangkok") | |
((equalp country "Togo") "Lome") | |
((equalp country "Tonga") "Nuku'alofa") | |
((equalp country "Trinidad and Tobago") "Port-of-Spain") | |
((equalp country "Tunisia") "Tunis") | |
((equalp country "Turkey") "Ankara") | |
((equalp country "Turkmenistan") "Ashgabat") | |
((equalp country "Tuvalu") "Funafuti") | |
((equalp country "Uganda") "Kampala") | |
((equalp country "Ukraine") "Kiev") | |
((equalp country "United Arab Emirates") "Abu Dhabi") | |
((equalp country "United Kingdom") "London") | |
((equalp country "United States of America") "Washington, D.C.") | |
((equalp country "Uruguay") "Montevideo") | |
((equalp country "Uzbekistan") "Tashkent") | |
((equalp country "Vanuatu") "Port Vila") | |
((equalp country "Vatican City") "Vatican City") | |
((equalp country "Venezuela") "Caracas") | |
((equalp country "Vietnam") "Hanoi") | |
((equalp country "Yemen") "Sanaa") | |
((equalp country "Zambia") "Lusaka") | |
((equalp country "Zimbabwe") "Harare") | |
) | |
) | |
;5 | |
(defun num-powers (x) | |
(if (numberp x) | |
(list | |
x | |
(* x x) | |
(* x (* x x)) | |
(* x (* x (* x x))) | |
) | |
() | |
) | |
) | |
;6 | |
(defun vector-dot-product (v1 v2) | |
(apply '+ (mapcar '* v1 v2)) | |
) | |
(defun vector-mult-scalar (v1 s) | |
(mapcar (lambda (x)(* x s)) v1 ) | |
) | |
(defun vector-sub (v1 v2) | |
(mapcar '- v1 v2) | |
) | |
(defun vector-add (v1 v2) | |
(mapcar '+ v1 v2) | |
) | |
(defun vector-cmp (v1 v2) | |
(every (lambda (x) (eq x 0)) (mapcar '- v1 v2)) | |
) | |
;7 | |
(defun discrt (a b c) | |
(- (* b b) (* 4 a c)) | |
) | |
(defun sqr-root (a b c) | |
(if (= a 0) | |
(-( / c b ) ) | |
(if (< (discrt a b c) 0) | |
nil | |
(list | |
(/ (+ (- b) (sqrt (discrt a b c)) ) (* 2 a)) | |
(/ (- (- b) (sqrt (discrt a b c)) ) (* 2 a)) | |
) | |
) | |
) | |
) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment