Wyklad OperacjeNaListach 28 10 08


Wyklad_OperacjeNaListach_28-10-08.nb 1
Zadanie 1.
1. Elementy dowolnej listy podnieść do kwadratu.
2. Element listy wyjściowej stojący na
losowo wybranej pozycji podnieść do kwadratu.
3. Kilka elementów listy wyjściowej stojących na
losowo wybranych pozycjach podnieść do kwadratu.
lista =
Table@Random@Integer, 8-10, 1082, 10, -5, 9, 8, 3, 0, 10<
lista^2
f@x_D = x^2;
Map@f, listaD
f ę@ lista
84, 100, 25, 81, 64, 9, 0, 100<
84, 100, 25, 81, 64, 9, 0, 100<
84, 100, 25, 81, 64, 9, 0, 100<
Wyklad_OperacjeNaListach_28-10-08.nb 2
MapAt@f, lista, Random@Integer, 81, Length@listaD82, 10, -5, 9, 8, 9, 0, 10<
m = Table@8Random@Integer, 81, Length@listaDm1 = Union@mD
MapAt@f, lista, m1D
882<, 83<, 82<, 82<, 88<<
882<, 83<, 88<<
82, 100, 25, 9, 8, 3, 0, 100<
Wyklad_OperacjeNaListach_28-10-08.nb 1
Zadanie 2.
1. Utworzyć listę złożoną i na jej podstawie utworzyć nową listę,
której elementami są sumy liczb poszczególnych podlist.
2. Elementy z poszczególnych podlist podzielić na 2.
l1 = Table@2^i + 2^j, 8i, 1, 5<, 8j, 1, 5884, 6, 10, 18, 34<, 86, 8, 12, 20, 36<,
810, 12, 16, 24, 40<, 818, 20, 24, 32, 48<, 834, 36, 40, 48, 64<<
Wyklad_OperacjeNaListach_28-10-08.nb 2
Apply@Plus, l1D
Table@Apply@Plus, l1@@iDDD, 8i, 1, Length@l1DPlus @@ l1
Table@Plus @@ l1@@iDD, 8i, 1, Length@l1DMapThread@Plus, l1D
872, 82, 102, 142, 222<
872, 82, 102, 142, 222<
872, 82, 102, 142, 222<
872, 82, 102, 142, 222<
872, 82, 102, 142, 222<
g@x_D = x ę 2;
Table@Map@g, l1@@iDDD, 8i, 1, Length@l1D882, 3, 5, 9, 17<, 83, 4, 6, 10, 18<,
85, 6, 8, 12, 20<, 89, 10, 12, 16, 24<, 817, 18, 20, 24, 32<<
Wyklad_OperacjeNaListach_28-10-08.nb 1
Zadanie 3. Napisać pocedurę, która w danej liście podnosi
do kwadratu elementy nieparzyste i sortuje listę rosnąco.
In[10]:= lista = Table@Random@Integer, 81, 9Print@"lista= ", listaD
lista1 = Select@lista, OddQD;
Print@"lista1= ", lista1D
lista2 = Select@lista, EvenQD;
Print@"lista2= ", lista2D
lista= 84, 2, 3, 4, 7, 8, 2, 7, 1, 1<
lista1= 83, 7, 7, 1, 1<
lista2= 84, 2, 4, 8, 2<
In[16]:= f@x_D := x " x
lista3 = Map@f, lista1D
lista4 = Sort@Join@lista2, lista3DD
Out[17]= 89, 49, 49, 1, 1<
Out[18]= 81, 1, 2, 2, 4, 4, 8, 9, 49, 49<
Wyklad_OperacjeNaListach_28-10-08.nb 1
Zadanie 4. W dowolnej liście zsumować ze sobą liczby pierwsze i oddzielnie
liczby złożone. Sprawdzić relację większości między obiema sumami.
1. sposób
In[1]:= lista = Table@Random@Integer, 82, 9Print@"lista= ", listaD
l1 = 8<;
l2 = 8<;
Table@If@PrimeQ@lista@@iDDD, AppendTo@l1, lista@@iDDD,
AppendTo@l2, lista@@iDDDD, 8i, 1, Length@listaDPrint@"l1= ", l1D
Print@"l2= ", l2D
lista= 83, 7, 8, 3, 9, 8, 9, 8, 3, 6, 5, 9, 5, 9, 9, 4, 3, 2, 3, 6<
l1= 83, 7, 3, 3, 5, 5, 3, 2, 3<
l2= 88, 9, 8, 9, 8, 6, 9, 9, 9, 4, 6<
Wyklad_OperacjeNaListach_28-10-08.nb 2
In[8]:= s1 = Apply@Plus, l1D;
s2 = Apply@Plus, l2D;
If@s1 s2, Print@"Sumy są równe i wynoszą: ", s1D,
If@s1 < s2, Print@"Większą wartość ma suma s2: ", s2D,
Print@"Większą wartość ma suma s1: ", s1DDD
Większą wartość ma suma s2: 85
Wyklad_OperacjeNaListach_28-10-08.nb 1
2. sposób
p = Select@lista, PrimeQD;
Print@"Lista liczb pierwszych: ", pD
k1 = 8<;
Table@If@PrimeQ@lista@@iDDD, AppendTo@k1, 8i8i, 1, Length@listaDPrint@"Numery pozycji liczb pierwszych: ", k1D
z = Delete@lista, k1D;
Print@"lista liczb złożonych: ", zD
Lista liczb pierwszych: 83, 7, 3, 3, 5, 5, 3, 2, 3<
Numery pozycji liczb pierwszych:
881<, 82<, 84<, 89<, 811<, 813<, 817<, 818<, 819<<
lista liczb złożonych: 88, 9, 8, 9, 8, 6, 9, 9, 9, 4, 6<
Wyklad_OperacjeNaListach_28-10-08.nb 1
Zadanie 5. Utworzyć dowolną 18 - sto elementową listę liczb z przedziału
H0, 9L. Stworzyć z niej listę złożoną z podlist trzy elementowych.
1. Z listy złożonej utworzyć nową listę o elementach
będących elementami środkowymi każdej podlisty.
2. Z listy złożonej utworzyć nową listę przez
usunięcie środkowych elementów każdej podlisty.
In[42]:= lista = Table@Random@Integer, 80, 9Print@"lista= ", listaD
lz = Partition@lista, 3D
Length@lzD
lista= 83, 2, 0, 2, 2, 2, 6, 7, 9, 5, 6, 5, 6, 7, 8, 3, 7, 5<
Out[44]= 883, 2, 0<, 82, 2, 2<, 86, 7, 9<, 85, 6, 5<, 86, 7, 8<, 83, 7, 5<<
Out[45]= 6
Wyklad_OperacjeNaListach_28-10-08.nb 2
In[91]:= n = Take@lz, 81, Length@lzD<, 82Take@lz, 81, 3<, 82Flatten@nD
Out[91]= 882<, 82<, 87<, 86<, 87<, 87<<
Out[92]= 882<, 82<, 87<<
Out[93]= 82, 2, 7, 6, 7, 7<
In[94]:= m = Drop@lz, 8<, 82Drop@lz, 81<, 82Flatten@mD
Out[94]= 883, 0<, 82, 2<, 86, 9<, 85, 5<, 86, 8<, 83, 5<<
Out[95]= 882, 2<, 86, 9<, 85, 5<, 86, 8<, 83, 5<<
Out[96]= 83, 0, 2, 2, 6, 9, 5, 5, 6, 8, 3, 5<
Wyklad_OperacjeNaListach_28-10-08.nb 1
Zadanie 6.
In[181]:=
d = Table@Random@Integer, 8-10, 10Print@"Złożona lista wyjściowa: ", dD
d1 = Random@Integer, 8100, 200Print@"d1= ", d1D
PadRight@d, 83, 4<, d1D
Złożona lista wyjściowa: 888, 7, 4<, 8-10, -7, -8<, 810, -6, 0<<
d1= 120
Out[185]=
888, 7, 4, 120<, 8-10, -7, -8, 120<, 810, -6, 0, 120<<
In[186]:=
PadRight@d, 84, 3<, d1D
Out[186]=
888, 7, 4<, 8-10, -7, -8<, 810, -6, 0<, 8120, 120, 120<<
Wyklad_OperacjeNaListach_28-10-08.nb 2
In[187]:=
PadLeft@d, 83, 4<, d1D
Out[187]=
88120, 8, 7, 4<, 8120, -10, -7, -8<, 8120, 10, -6, 0<<
In[188]:=
PadLeft@d, 84, 3<, d1D
Out[188]=
88120, 120, 120<, 88, 7, 4<, 8-10, -7, -8<, 810, -6, 0<<


Wyszukiwarka

Podobne podstrony:
Wyklad OperacjeNaListach 10 08
Wyklad LiczbyZmienne 10 08
TI 03 10 08 B pl(1)
Wyklad ElementyProg 12 08
2005 10 084133 set9
III wykład 20 10 14 NAUKA ADM
Analiza Wykład 3 (21 10 10)
wykład 3 27 10 12
wyklad 3 zap i,! 10 2013
2013 10 08 Likwidacja zgrupowania NSZ Bartka Umorzenie śledztwa
Wykład II (10 X 2010r )
MIKROEKONOMIA WYKŁAD 2 (15 10 2011) elastyczność popytu i podaży
ET DI2 ObwodySygnaly2 wyklad nr 9 10 czworniki aktywne

więcej podobnych podstron