[Powered by Google Translate] Fadhb Rannóg Sraith 2: Edition Hacker
Rob Bowden, Ollscoil Harvard
Is é seo an CS50. CS50.TV
Mar sin, tá mé Rob. Tá mé sinsearach i Kirkland. Is é seo mo tríú bliain TFing CS50.
Is é an chéad uair go bhfuil muid ag athrú ó rannóg traidisiúnta léacht-stíl,
i gcás chineál againn ach an athbhreithnithe méid a tharla i léacht agus ansin tú guys ceisteanna a chur,
anois le bheith a lán níos mó fadhb-bhunaithe, áit againn Spásanna a úsáid, agus -
Ó, mar sin tá an smaoineamh chun dul chuig an nasc Chuir mé tú, agus ansin beidh tú a bheith i mo Spás.
Níl An bhfuil aon duine a bhfuil ríomhaire glúine? Maith go leor.
Mar sin, táimid ag dul a bheith ag baint úsáide seo, agus táimid ag dul a bheith fadhbanna ag déanamh cónaí in alt
agus ag plé leo agus figuring amach cad atá cearr
agus d'fhéadfadh mé a tharraingt suas cuid de do chód, agus d'fhéadfadh plé a dhéanamh do chuid smaointe mé.
Mar sin, bhí duine ar bith deacracht?
Is féidir leat comhrá ar an taobh; Níl a fhios agam má beidh orainn chúis sin.
Anois, cosúil leis an supersection roimhe seo, má bhí tú ag an rang, tá a fhios agat cad é sin faoi.
Ar gach ceann de na tacair P tá tá dul chun bheith ar na hailt sin.
Mar sin, P-leagtar 2, sonraíochtaí, buille faoi thuairim mé chonaic tú é ar P-leagtar 1 cheana féin.
Ach is féidir linn breathnú ar P-leagtar 2 ar cad táimid ag dul a bheith ag dul thar lá atá inniu ann.
Agus beidh tú a fheiceáil roinn de na ceisteanna.
Mar sin, beidh sé seo a bheith i ngach ceann de P-Leagann; beidh a bheith ann d'alt den ceisteanna.
Go dtí seo tá muid a dúirt, "Smaoinigh ar an deis a chleachtadh."
Ní bheidh ort a chur isteach sa chlár seo.
Is é an smaoineamh go bhfuil siad seo ceaptha chun cineál cabhrú leat tús a chur leis an leagan bhfadhb.
Buille faoi thuairim mé ar an t-eagrán Hacker, go leor acu go bhfuil ceaptha a bheith díreach nua, rudaí suimiúla a fhoghlaim.
Ní fhéadfaidh siad a bheith infheidhme go díreach leis an leagan bhfadhb.
Agus anois nach bhfuil muid ag tú isteach iad, ach go teoiriciúil,
do thacair fhadhb níos déanaí, d'fhéadfá a chur faoi bhráid iad, agus dá bhrí sin is féidir leat teacht ceachtar alt
nó féachaint ar an alt a fháil ar na freagraí, nó is féidir leat iad a fháil ach ar do chuid féin
más rud é nach mbraitheann tú mhaith ag baint suilt as mo láthair.
Mar sin, an - Sílim go bhfuil an chéad cheann.
Oh. Chomh maith leis sin, faoi na hailt de na ceisteanna dúinn freisin a bheith agat ceisteanna a chur faoi na shorts.
Mar sin, buille faoi thuairim mé, go teoiriciúil, go bhfuil tú ag ceaptha a féachaint ar na roimh theacht ar ailt seo,
ach tá sé fíneáil más rud é nach bhfuil tú; beidh muid ag dul os a gcionn ar aon nós.
Mar sin, is féidir linn tús a chur le seo: "Conas a lúb agus difriúil ó lúb dhéanamh-cé go?
Nuair a bhíonn an dara ceann a bheith úsáideach? "
Mar sin, tá duine ar bith aon -?
[Mac Léinn] An dhéanamh-cé go mbeidh lúb fhorghníomhú i gcónaí ar a laghad uair amháin.
Tá. Mar sin, is é sin an difríocht. A lúb agus - I'll a dhéanamh ach é a chur ar anseo - agus lúb, ní mór dúinn an riocht
ar dheis anseo, ach a dhéanamh-tamaill, ní gá duit coinníoll go dtí go bhfaigheann muid síos anseo.
Agus mar sin, tá nuair do chlár forghníomhaitheach, agus faigheann sé leis an lúb agus,
Seiceálacha sé láithreach má tá an coinníoll seo fíor.
Más rud é nach bhfuil an coinníoll fíor, beidh sé skip díreach os cionn an lúb go hiomlán.
Ná-agus lúb, mar go bhfuil an clár forghníomhaitheach, faigheann sé go dtí an "a dhéanamh."
Ní dhéanfaidh aon ní a tharlaíonn ag an bpointe seo, leanann ach forghníomhaitheach.
Ansin, nuair a bhuaileann sé an "ach," má tá an coinníoll fíor, beidh sé lúb ar ais agus é a dhéanamh arís
agus arís agus arís eile go dtí nach bhfuil an coinníoll fíor agus ansin díreach a thiteann tríd.
Mar sin, an difríocht a bheith, gur féidir leis an skip ceart ó thús an-.
Seo fhorghníomhú gá go uair amháin agus is féidir a fhorghníomhú ansin uaire níos mó má tá an coinníoll go fóill fíor.
Mar sin, beidh an lúb agus a dhéanamh ach amháin é aon uair amháin, nó - an lúb agus - ní féidir linn a dhéanamh ar chor ar bith,
ós rud é chomh luath agus a fháil againn chun é, má tá an coinníoll bréagach, beidh orainn a skip díreach ceart níos mó ná é.
De bharr an méid a dhéanamh-agus lúb, beidh muid ag fhorghníomhú uair amháin, gá.
Ansin, nuair a fhaigheann muid ar an riocht, a sheiceáil muid má tá sé fíor nó bréagach.
Má tá sé fíor, beidh orainn é a dhéanamh arís; má tá sé bréagach, beidh orainn leanúint ar aghaidh ach dul.
Mar sin, nuair a bhíonn an dara ceann go háirithe úsáideach?
Sin, is féidir liom a rá go iomláine na 4 bliana, 3 bliana, is cuma cad,
go bhfuil mé ag cláir, tá mé úsáid as seo, cosúil le, faoi 10 uair.
Agus is dócha go bhfuil 5 acu i CS50 nuair a bhíonn muid ag tabhairt isteach a dhéanamh-agus lúba.
Mar sin, nuair a dhéanann a d'úsáid tú a dhéanamh-agus lúba?
Nuair a bhíonn an - yera yeah?
[Mac Léinn] Nuair a bhfuil tú ag iarraidh a fháil ionchur úsáideora, nó rud éigin mian leat a sheiceáil -
Yeah. Sin a dhéanamh-agus lúba, úsáideora ionchur is é an ceann mór.
Sin an fáth ar na tacair chéad fhadhb lánúin, nuair is mian leat a iarraidh ar an úsáideoir, ar nós,
"A thabhairt dom ar shraith," ní féidir leat leanúint go dtí go bhfaigheann tú go teaghrán.
Agus mar sin tú, gá, is gá a iarraidh ar an teaghrán ar a laghad uair amháin.
Ach ansin, más rud bhfreagraíonn siad rud éigin dona, ansin is gá duit a lúb ar ais agus iarr arís.
Ach seachas ionchur úsáideora, tá sé an-annamh go bhfuil mé teacht ar cás
áit ar mhaith liom lúb "ar a laghad uair amháin" ach b'fhéidir níos mó.
Ceisteanna nó -? An bhfuil duine ar bith a úsáidtear a dhéanamh-agus lúb áit ar bith eile?
Maith go leor. Mar sin, tá an ceann eile, "Cad neamhdhearbhaithe aitheantóir
de ghnáth in iúl má outputted ag clang? "
Mar sin, d'fhéadfadh cén cineál cód a scríobh mé a fháil ar 'aitheantóir neamhdhearbhaithe?'
[Mac Léinn] Go x = 2?
Mar sin, is féidir linn iarracht a dhéanamh ach é i anseo, x = 2.
Beidh muid seo a reáchtáil - OH, ní raibh mé cliceáil é. Mar sin anseo a fháil againn - ceart go leor.
"Úsáid x aitheantóir neamhdhearbhaithe."
Mar sin, go bhfuil an aitheantóir neamhdhearbhaithe, athróg.
Beidh sé glaoch go minic athróg aitheantóir.
Mar sin, ní fhéadfadh sé a fhios tá sé i ndáiríre athróg; nach ndéanann sé a fhios a bhfuil sé.
Mar sin tá sé aitheantóir.
Mar sin, cén fáth go bhfuil neamhdhearbhaithe é? Yeah.
Mar sin, a bheith soiléir maidir le téarmaíocht, an dearbhú athróg
Is é nuair a deir tú "x slánuimhir," nó "teaghrán y," is cuma cad.
An initialization an athróg, nó a shannadh ar an athróg,
Tá aon uair a rá leat "x = 2."
Mar sin, is féidir linn a dhéanamh ar na céimeanna i leith, slánuimhir x, x = 2, agus go dtí - is féidir linn a bheith a bunch de rudaí i anseo -
ach go dtí go dtarlaíonn an líne seo, tá x neamhuimhriúil go fóill, ach tá sé dearbhaithe.
Agus mar sin is féidir linn a dhéanamh ar ndóigh é i 1 líne, agus anois táimid ag dearbhú agus initializing.
Ceisteanna?
Agus ar deireadh, "Cén fáth nach bhfuil an Cipher Caesar an-slán?"
Mar sin, an chéad, an bhfuil duine ar bith ag iarraidh a rá cad é an Cipher Caesar?
[Mac Léinn] Caesar Cipher é go díreach a mhapáil tú, aistriú tú gach litir,
tá líon áirithe litreacha a théann os a chionn, agus bogadh ar ais thar, agus nach bhfuil sé an-slán mar gheall ar
níl ach 26 roghanna féideartha agus tá tú díreach chun iarracht a dhéanamh gach 1 de na dtí go mbeidh tú é a fháil.
Oh. Mar sin, ba chóir dom a dhéanamh arís?
An Cipher Caesar, it's - Ciallaíonn mé, beidh tú ag déileáil leis é a chur ar na fadhbanna a bhfuil tú -
nó buille faoi thuairim mé an t-eagrán caighdeán an tacair fhadhb nach bhfuil ar an eagrán hacker.
Mar sin, ar an t-eagrán caighdeánach chun an leagan fhadhb, gheobhaidh tú teachtaireacht cosúil le, "ar domhan Dia duit,,"
agus tá tú freisin roinnt mhaith 6, agus a ghlacann tú an teachtaireacht, agus gach carachtar ar leith,
tú é a rothlú ag 6 poist sa aibítir.
Mar sin, an 'h' a bheadh ​​i hello a bheith h-i-j-k-l-m-n.
Mar sin, bheadh ​​an chéad litir n. Déanaimid an rud céanna le e.
Má táimid tar éis, cosúil le, z nó rud éigin, ansin dúinn Timfhilleadh ar ais ar fud do 'a.'
Ach faigheann gach carachtar rothaigh 6 carachtair níos déanaí sa aibítir, agus nach bhfuil sé an-slán
ós rud é nach bhfuil ach 26 féidearthachtaí maidir le cé mhéad bealaí d'fhéadfaí tú a wrap litir amháin.
Mar sin, is féidir leat triail ach na 26 acu agus, is dócha, as teachtaireacht fada go leor,
ach 1 de na 26 rudaí is féidir ag dul a bheith inléite,
agus tá an ceann inléite ag dul a bheith ar an teachtaireacht bunaidh.
Mar sin, nach bhfuil sé ar bhealach an-mhaith gcriptiú rud ar bith ar chor ar bith.
Duine nach gaol leis na shorts, "Cad é feidhm?"
Mar sin, cad feidhm? Tá.
[Mac Léinn] Tá sé cosúil le píosa ar leith de chód gur féidir leat glaoch chun dul tríd agus ansin an luach ar ais cibé fháil.
Yeah. Mar sin, beidh mé freagra a thabhairt dó freisin a fhreagairt an chéad cheann eile - nó arís ag freagairt freisin ach an ceann eile.
Is féidir leat úsáid a bhaint as feidhmeanna seachas díreach a chóipeáil agus a ghreamú cód arís agus arís eile.
Just a ghlacadh go cód, é a chur isteach i fuction, agus ansin d'fhéadfaí tú glaoch ar an fheidhm amháin
cibé áit a bhfuil tú ag chóipeáil agus a ghreamú.
Mar sin, tá feidhmeanna úsáideacha.
Mar sin anois beidh muid a dhéanamh fadhbanna iarbhír.
An chéad cheann. Dá bhrí sin tá an smaoineamh an chéad cheann, is féidir leat pas a fháil sé ar shraith, agus beag beann ar an -
nó nach rá go léir CásÍochtair? Ní chuireann sé a rá go léir CásÍochtair.
Mar sin, is féidir an teachtaireacht rud ar bith, agus - OH uimh. A dhéanann sé.
"Chun simplíocht, is féidir leat glacadh leis go mbeidh an t-úsáideoir amháin a ionchur litreacha CásÍochtair agus spásanna."
Mar sin, táimid pas sé teachtaireacht gan ach litreacha CásÍochtair agus ansin dúinn malartach
idir chaipitil agus CásÍochtair - athrú againn ar an teaghrán a bheith caipitil agus litreacha beaga, alternating.
Mar sin, sula a thabhairt duit an dara Léim go fiú i an fhadhb,
cad é an chéad rud gur gá dúinn a dhéanamh?
Ó, cad a rinne mé ach cliceáil ar? Ó, chliceáil mé díreach ar r-phost i anseo.
Mar sin, an chéad rud is gá dúinn a dhéanamh - Táim ag lorg mé ag an duine mícheart?
An bhfuil sé seo mar chuid de an ceann seo?
Níl, iad siúd fós ann, cé.
Maith go leor, fós anseo.
Anois, ní féidir linn glacadh leis -? Tá. Anseo ní féidir linn glacadh leis go bhfuil sé ach litreacha beaga agus spásanna.
Mar sin, anois ní mór dúinn chun déileáil leis an bhfíric gur féidir na litreacha a bheith is cuma cad ba mhaith linn iad a bheith.
Agus sin an chéad rud ba mhaith linn a dhéanamh a fháil ach ar an teachtaireacht.
Ní mór dúinn ach a fháil ar shraith, téad s = GetString, maith go leor.
Anois an fhadhb seo, tá cúpla bealaí a dhéanamh air.
Ach táimid ag dul a iarraidh a úsáideann oibreoirí bitwise anseo.
An bhfuil daoine nach raibh bíodh sé ar an supersection,
nó rud éigin, agus nach bhfuil a fhios cad iad na n-oibreoirí bitwise?
Nó conas a bhaineann siad le ASCII in aon slí?
[Mac Léinn] Ní raibh mé ag an supersection, ach tá a fhios agam cad iad na hoibreoirí bitwise.
Maith go leor. Mar sin, ansin ní féidir liom dul thar an Basics acu, ach beidh mé a mhíniú
cad táimid ag dul a iarraidh úsáid a bhaint anseo.
Mar sin, 'A': Ionadaíocht Dénártha caipitil A, an uimhir 65.
Tá mé ag dul díreach chun breathnú ar - 41 ag dul a bheith 01,000,001.
Sin, ba chóir a bheith go 65 i dheachúlach; mar sin is é seo an ionadaíocht dhénártha de chaipiteal A. carachtar
Anois, le hionadaíocht dhénártha de charachtar cás íochtair 'a'
ag dul a bheith ar an rud céanna, beagnach. An bhfuil go - 6, yeah. Tá sé seo ceart.
Caipiteal sin dénártha A CásÍochtair, dénártha 'a.'
Mar sin, faoi deara go bhfuil an difríocht idir A agus é 'a' seo beagán amháin.
Agus a tharlaíonn sé seo a bheith ar an 32 giotán, an beagán a ionadaíonn an uimhir 32.
Agus a dhéanann chiall sin ós rud é A 65; is 'a' 97.
Is é an difríocht idir iad 32.
Mar sin anois a fhios againn gur féidir linn a thiontú ó A go 'a' ag cur A
agus oring bitwise é, le - go Breathnaíonn an nós 1.
Is é seo bitwise NÓ, le 00100000, agus beidh a thabhairt dúinn 'a.'
Agus is féidir linn a fháil ó 'a' le A ag bitwise fhágáil ar
le 11, 0 san áit sin, 11111.
Mar sin, beidh sé seo a thabhairt ansin dúinn go díreach cad a bhí 'a', ach seo a chealú beagán aonair amach,
mar sin beidh orainn 01000001; Níl a fhios agam má chomhaireamh mé ceart.
Ach an teicníc de bitwise oring a fháil ó chaipiteal dtí an cás íochtair,
agus níl sé bitwise fhágáil ar a fháil ó CásÍochtair le caipiteal eisiach chun A.
Gach ceann de na litreacha, K vs k, Z vs z,
iad ar fad ag dul ach a bheith éagsúil ag an beagán amháin.
Agus mar sin is féidir leat seo a úsáid chun athrú ó aon litir litreacha beaga d'aon litir caipitil agus vice versa.
Maith go leor. Mar sin, ar bhealach éasca a fháil as seo - mar sin in ionad a bheith
scríobh amach cibé 1011111 Is é - ar bhealach éasca a ionadaíonn an líon seo, agus nach bhfuil an ceann seo
a chuaigh mé os a chionn sa supersection, ach tilde (~) Is é oibreora eile bitwise.
Cad a dhéanann é ~ Breathnaíonn sé ar an ionadaíocht giotán.
Ligean ar ghlacadh le líon ar bith.
Tá sé seo ach roinnt uimhir dhénártha, agus cad a dhéanann ~ Tá flips sé ach gach ceann de na giotán.
Mar sin, bhí sé seo le 1, anois 0, tá sé seo le 0, anois 1, 010,100.
Mar sin, sin uile ~. Dá bhrí sin tá 32 ag dul a bheith ar an líon - fáil réidh le sin -
mar sin tá 32 ag dul a bheith ar an líon 00,100,000, agus mar sin ~ seo ag dul a bheith
an uimhir seo suas anseo go ANDed mé 'a' le.
An bhfuil gach duine a fheiceáil go? Tá sé seo go leor coitianta, cosúil le nuair is mian leat chun an figiúr amach
le haghaidh rudaí níos déanaí go bhféadfaimis a bheith ag féachaint, nuair is mian linn a fheiceáil más rud é -
nó ba mhaith linn gach rud, gach sraith giotán amháin ach amháin i gcás 1
claonadh a bhíonn tú a dhéanamh ~ an beagán nach a dhéanann muid ag iarraidh a leagan síos.
Mar sin, nach bhfuil muid ag iarraidh an leagan 32 giotán, mar sin againn a dhéanamh ~ de 32.
Maith go leor. Mar sin, is féidir linn a úsáid gach ceann de na anseo.
Gach ceart, mar sin tá sé breá más rud é nach bhfuil tú ag déanamh, beidh muid ag siúl go mall thar chéile,
nó siúl thar an, agus mar sin - tríd an. Siúl tríd an.
Mar sin, ní mór dúinn ár téad, agus ba mhaith linn a lúb thar gach carachtar sa téad agus rud éigin a dhéanamh dó.
Mar sin, conas a dhéanann muid lúb thar teaghrán? Cad ba cheart dúinn a úsáid?
Níl mé ag dul a dhéanamh ar anseo. Yeah.
Mar sin, tá mé mo iterator, agus dúirt sé é, ach cén chaoi a fhios agam cé mhéad carachtair atá sa teaghrán?
Strlen (í), ansin i + +.
Mar sin, cad é nach bhfuil mé a rinneadh anseo an bealach is fearr chun rudaí a dhéanamh.
An bhfuil fhios ag aon duine cén fáth?
Toisc go bhfuil tú ag seiceáil an teanga an teaghrán gach uair amháin.
Mar sin, táimid ag dul chun mhaith chun bogadh strlen, d'fhéadfadh liom a rá suas anseo, slánuimhir length = strlen (í),
agus ansin is féidir liom <fad, agus i gcás nach bhfuil tú ag feiceáil air roimh,
Raibh mé in ann a dhéanamh chomh maith int i = 0, length = strlen (s).
Agus mar sin tá sé seo beagán níos fearr, ós rud é anois tá mé srian ar an raon feidhme
an ilfhaid agus go díreach leis an 'in ionad' lúb, seachas maidir le dearbhú é roimh
agus go bhfuil sé i gcónaí, agus i gcás nach raibh tú ar ghabháil cén fáth go dona,
nó cén fáth go raibh an bunaidh olc, it's - tosú ag an haghaidh lúb.
Sheiceáil mé an riocht. An bhfuil <i an fad s?
Mar sin, an fad s, a ligean ar obair le "hello" an t-am ar fad.
Mar sin, fad s, h-e-l-l-o. Tá Fad 5.
Mar sin, tá i = 0, fad 5, mar sin nach bhfuil i <5, mar sin leanann an lúb.
Ansin théann muid arís. Táimid ag seiceáil an riocht. An bhfuil <i an fad hello?
Mar sin a ligean sheiceáil fad hello. H-e-l-l-o. Sin 5; nach bhfuil i <5, mar sin leanfaimid orainn ag arís.
Mar sin, táimid ag ríomh, tá muid ag comhaireamh hello, i gcás gach atriall den lúb,
fiú cheap riamh tá sé ag dul a athrú; tá sé ag dul i gcónaí a bheith 5.
Mar sin, táimid cuimhin ach 5 suas chun tosaigh, agus anois tá gach rud níos fearr.
Mar sin, iterating thar an teaghrán ar fad.
Cad é ba mhaith linn a dhéanamh le haghaidh gach carachtair na sreinge?
[Labhairt na Mac Léinn, dothuigthe]
Yeah. Mar sin, má tá an carachtar neamh-aibítreach, ansin ba mhaith linn ach a scipeáil thar sé.
Mar gheall orainn cúram ach thart ar litreacha aibítre; ní féidir linn leas a roinnt.
Mar sin, conas is féidir linn seo a dhéanamh? Mar sin, ár n-riocht, mar sin má ba mhaith linn rud éigin - seiceáil má tá sé aibítre.
Mar sin, conas is féidir linn é seo a sheiceáil?
[Mac Léinn] Is féidir leat úsáid ach an fheidhm alfa.
An é sin san áireamh i gceachtar den dá, nó aon áirítear mhaith, char.h nó rud éigin?
Ní Lig a bhaint as an bhfuil feidhm alfa, agus úsáid an follasacha - mar sin ní mór dúinn s [i],
go bhfuil an carachtar ochtú s, cuimhnigh go bhfuil teaghrán le sraith de carachtair,
mar sin tá an carachtar ochtú s.
Anois, má tá sé ina litir caipitil, tá a fhios againn go bhfuil sé a bheith i réimse sonrach.
Agus cad é an raon?
Yeah. Mar sin, má s [i] Is ≥ 65, agus s [i] Is ≤ 90, cad ba cheart dom a dhéanamh ina ionad sin?
Yeah. Mar sin, níor chóir duit go hiomlán fiú gá a fhios ag na luachanna ASCII de rud ar bith riamh.
Ná smaoineamh ar an 65 uimhreacha, 90, 97 agus 102, nó is cuma cad é.
Ní gá duit - 112 -? Ní gá duit a fhios sin ar chor ar bith. Sin mícheart freisin.
Ach úsáid a bhaint as na carachtair aonair ceanglófar, tairisigh ceanglófar amháin. Mar sin, tá 'A' agus níos lú ná 90 'Z.'
Agus é seo i bhfad níos fearr - ní bheadh ​​a fhios agam as an barr mo cheann go bhfuil Z 90.
A fhios agam as an barr mo cheann go bhfuil 'Z' caipiteal Z.
Is féidir sin, chomh fada agus is é seo i raon na caipitil A go Z caipiteal, nó linn a sheiceáil le haghaidh CásÍochtair,
Nó má tá sé sa raon ≥ 'a' agus ≤ z.
Mar sin go bhfuil ár riocht.
Ní hionann an stíl do áit a chur ar na rudaí seo.
Feicfidh mé é a dhéanamh mar seo.
Anois, cad ba mhaith linn a dhéanamh?
Tá a fhios againn go bhfuil an litir seo carachtar, carachtar aibítreach.
Mar sin, is gá dúinn a malartach idir an ceart seo a bheith anois ina litir caipitil nó litir litreacha beaga.
Conas is féidir linn a súil a choinneáil ar a ceann is mian linn é a bheith?
[Guthanna na Mac Léinn, dothuigthe]
Mar sin, tá, ach lig dom a sheiceáil.
Deirtear go raibh Modúl 0-2 a bhí, moladh chaitheamh amach, agus aontaím leis sin.
Ach amháin fógra sin, cosúil le - is é seo an cás? Yeah.
Tá sé gach duine eile, ach ní féidir linn modúl 2 de i, nó mod i 2, ós rud é
faoi ​​deara go bhfuil E caipitil agus tá sé 'a' CásÍochtair? Ach tá spás scaradh iad?
Mar sin, tá siad ag dul a bheith ar an mod céanna 2, ach tá siad cásanna éagsúla.
[Ceist na Mac Léinn, dothuigthe]
Yeah. Mar sin, táimid ag dul ach a choinneáil de chomhaireamh.
D'fhéadfadh muid a dhéanamh freisin i anseo má theastaigh againn; d'fhéadfadh a fháil unwieldy beag
i le dearbhuithe lúb; beidh mé é a chur suas anseo.
Mar sin, líon o Tosaíonn = ag 0.
Agus mar sin anois, tá mé ag dul a chomhaireamh cé mhéad carachtair aibítre tá muid go raibh.
Mar sin, táimid ag dul dosheachanta a chomhaireamh + + ó fuair muid charachtar eile aibítre.
Ach, mar sin anois tá tú ag rá má count mod 2.
Mar sin, cad má count mod 2? Oh. Feicfidh mé a dhéanamh == 0 do anois.
Beidh muid ag dul chomh maith os cionn sin. Mar sin, má count mod 2 == 0, ansin cad é?
[Mic Léinn freagra, dothuigthe]
Mar sin, ba mhaith linn é a deireadh suas chás uachtair.
Tá 2 chás; chás uachtair agus CásÍochtair na 2 chás.
Mar sin, má tá muid i litreacha beaga is gá dúinn chun é a dhéanamh cás uachtair.
Má tá sé chás uachtair ní mór dúinn aon rud a dhéanamh.
Ach, tá bealach - shouldn't a bheith iompaithe -
nach bhfuil againn fiú gá a sheiceáil cibé an bhfuil sé chás uachtair nó CásÍochtair?
Cad is féidir linn a dhéanamh chun a dhéanamh i gcónaí cinnte go bhfuil muid deireadh suas i gcónaí ag chás uachtair?
Mar sin, fógra a raibh muid le haghaidh CásÍochtair 'a'; cad má rinne muid an rud céanna cruinn go ceannlitreacha A?
An bhfuil cás uachtair athrú, nó a dhéanann an t-athrú ar luach?
Yeah. Dá bhrí sin tá aon litir bitwise caipitil ANDed le ~ 32 ag dul a bheith go carachtar chás uachtair céanna
mar gheall ar aon charachtar chás uachtair nach bhfuil an giotán 32 a leagan síos.
Mar sin, más mian linn a thabhairt ar an carachtar s [i], ba mhaith linn é a bheith CásÍochtair nó ceannlitreacha.
Mar sin, má bhí sé CásÍochtair, tá sé anois ar chás uachtair, más rud é go raibh sé chás uachtair, tá sé fós chás uachtair, agus go bhfuil sé.
A dúirt mé é seo ar an supersection: Is féidir leat úsáid a bhaint as 32 más mian leat, ach claonadh agam fearr a dhéanamh 'a' - A,
seachas díreach 32 plain, toisc nach féidir é a bheith ar aon giotán eile.
Tar éis an 32 giotán, is féidir é a bheith ar aon cheann díobh seo, nó nach mbeadh go leor againn
uimhreacha chun ionadaíocht a dhéanamh ar fad na carachtair.
Mar sin, má fhaigheann tú an giotán 32, d'fhéadfadh sé a bheith ar an giotán 64, d'fhéadfadh sé a bheith ar an giotán 128.
D'fhéadfadh aon cheann de na píosaí an beagán a idirdhealaíonn idir chás uachtair agus CásÍochtair.
Nár chóir dom a fhios go bhfuil sé an giotán 32.
Is féidir liom seo a úsáid 'a' - A a fháil ar an giotán go difriúil idir an dá
gan gá a bheith ag brath ar an uimhir dhraíochta go bhfuil 32.
Agus mar sin anois, comhaireamh eile a bhí corr, agus mar sin cad ba mhaith liom a dhéanamh?
[Freagraí na Mac Léinn, dothuigthe]
[Mac Léinn] Cad é sin?
Dhéanfaidh mé é i 1 dara.
Mar sin, anois más mian liom - Ba mhaith liom a dhéanamh cinnte go bhfuil an carachtar anois CásÍochtair,
agus mar sin is féidir liom NÓ ag 32, agus 32 brí 'a' - A.
Ach fógra, ag an réasúnaíocht chéanna mar an ceann roimhe sin, más rud é go
an litir a bhí cheana féin CásÍochtair, ansin oring ag 32 coimeádann ach é cás íochtair.
Níor athraigh sé an carachtar bunaidh.
Ach anois ní féidir liom a sheachaint ag rá, "Má tá sé CásÍochtair, déan dearmad ach mar gheall air,
má tá sé chás uachtair, a athrú ansin é. "
Tá sé i bhfad níos áisiúla a dhéanamh.
[Mac Léinn] An mbeadh an straitéis dhealú chás uachtair ón obair CásÍochtair más rud é nach raibh sé 32?
Má bhí sé, cosúil le, 34 nó rud éigin?
Mar sin, is gá duit a fhios go bhfuil an difríocht idir an 2 -? >> 1 giotán.
D'fhéadfadh sé a bheith níos mó ná 1 giotán, chomh fada agus atá gach ceann de na píosaí thíos an post seo mar an gcéanna.
Mar sin, ní mór dúinn ar a laghad 26 carachtair - nó, tá 26 carachtair.
Mar sin, ní mór dúinn ar a laghad 26 uimhreacha chun ionadaíocht a dhéanamh ar an difríocht -
An difríocht idir A agus tá le 'a' a bheith ar a laghad 26,
nó eile nach mbeadh againn ionadaíocht na huimhreacha go léir caipitil.
Ciallaíonn sé sin go A, más rud é go dtosaíonn muid ag 1, tá sé ag dul a úsáid gach ceann de na píosaí,
gach ceann de na 5 giotán chéad uair, gach rud chun ionadaíocht a dhéanamh trí Z.
Sin an fáth an beagán eile, nó an giotán, is é an beagán eile an ceann a tá a roghnaíodh chun idirdhealú a dhéanamh idir A agus 'a'.
Sin an fáth, i dtábla ASCII, tá 5 siombailí scaradh litreacha caipitil ó litreacha CásÍochtair.
Ó tharla go bhfuil na siombailí, an 5 breise a thugann suas an 32 a bheith ar an difríocht idir iad.
[Mac Léinn] Mar sin d'fhéadfadh muid a dhéanamh, mar tá ASCII deartha go bhealach.
Tá. Ach ASCII - d'fhéadfadh an difríocht a bheith chomh maith an dá de na giotán.
Cosúil, dá A 10000001, agus 'a' a bhí 11100001 - mé dearmad, is cuma cad.
Ach dá mbeadh sé seo, ansin d'fhéadfadh muid a úsáid i gcónaí 'a' - A.
Tá sé díreach anois ar an difríocht idir A agus é 'a' go fóill ar na 2 giotán.
I mo thuairimse, tá sé scríofa 48. An bhfuil sé 32 + 64? Sílim go bhfuil sé?
Bheadh ​​sé fós 2 giotán; gach carachtar aonarach;, cosúil le, Z agus z, K agus k,
bheadh ​​siad fós an giotán céanna cruinn atá leagtha seachas iad siúd a 2 giotán.
Mar sin, chomh fada agus go bhfuil fíor i gcónaí, is cuma má tá muid ag baint úsáide ASCII nó roinnt córas eile,
chomh fada agus níl ach líon sraith de píosaí atá éagsúil le haghaidh gach carachtair,
ansin go n-oibríonn breá.
Tá sé sin go díreach a bunaíodh 32 suas mar tá sé an chéad cheann a d'fhéadfadh muid a úsáid, b'fhéidir. >> Cool.
Claonadh agam fearr, i gcás nach bhfuil tú ag feiceáil, má tá an bloc ach líne amháin,
Is féidir leat a fháil haitheantas coibhneasta ar an braces gcuach; mar sin claonadh agam fearr é seo a dhéanamh.
Chomh maith leis sin, tá a fhios agat conas is féidir linn rudaí a dhéanamh cosúil le s [i] + = 1?
Is féidir leat a dhéanamh chomh maith s [i] bitwise AGUS = 32.
Agus bitwise NÓ = 32.
Chomh maith leis sin, comhaireamh mod 2 == 0.
Mar sin, cuimhnigh go - nach mbeidh mé ag scríobh sé - tá aon luach neamh-náid fíor, agus 0 bréagach.
Mar sin, "má count mod 2 == 0" Is é an céanna mar a rá "más rud é nach comhaireamh mod 2."
Ba mhaith liom a bheith droim ar ais dócha go díreach ar na línte agus dúirt sé, "má count mod 2,
dhéanann na NÓ 1, eile dhéanann na AGUS 1, "sa chaoi is nach raibh mé gá an" nach bhfuil. "
Ach oibríonn sé seo díreach chomh maith.
Agus cad eile is féidir liom a dhéanamh anseo?
D'fhéadfaí tú a chur le chéile iad le trínártha má bhí tú, ach ansin gur mhaith a dhéanamh ach rudaí Messier
agus is dócha níos deacra a léamh, mar sin ní bheidh muid é sin a dhéanamh.
Duine ar bith go mbeadh aon mholtaí eile?
An é sin d'iarr ar fad an fhadhb? Oh yeah.
Sin a fháil haitheantas coibhneasta de na línte folmha, anois beidh orainn a phriontáil f,% s a bheith ar an ceann do teaghráin,
Beidh muid ag phriontáil f, s.
Anois, a ligean rith sé. An raibh a dhéanfaidh mé aon rud mícheart?
Sin \ "; Ba mhaith liom a n.
Maith go leor. Anois, beidh muid ag rith sé. Beidh sé yell is dócha ag dom.
Strlen i string.h.
Mar sin, is é seo is é an rud deas faoi clang insíonn sé duit cad tá sé i,
in ionad GCC a deir go díreach, "Hey, Forgot tú rud éigin, níl a fhios agam cad a bhí sé."
Ach beidh sé seo a insint dom, "i gceist agat a chur san áireamh string.h."
Mar sin, ní raibh mé leid do rud ar bith, mar sin ní a dúirt sé rud ar bith.
Ach beidh muid ag déanamh a gcuid shampla, "Go raibh maith agat 4 den bhreiseán".
Go Breathnaíonn ceart. Hooray.
Mar sin, filleadh ar do is mó, ní liom a dhéanamh beagnach sé.
Tá sé seo roghnach. Agus is é príomh-fheidhm ach amháin le haghaidh a bhfuil sé roghnach.
Mura bhfuil tú ar ais aon rud ó is mó, tá sé air féin go gceist agat a thabhairt ar ais 0.
Ceisteanna?
Maith go leor. Mar sin, anois an dara fadhb.
"Athghair ón 2 seachtaine dara léacht go swapping 2 athróg 'luachanna ag dul thar
Ní sin 2 athróg le feidhm (fiú más ar a dtugtar babhtála) ag obair go díreach, ar a laghad, ní gan 'threo.' "
Agus leideanna neamhaird go dtí go bhfaigheann muid a thabhairt dóibh.
Ba mhaith linn a mhalartú 2 athróg; nach bhfuil muid ag baint úsáide as feidhm é a dhéanamh.
Táimid ag dul go fóill é a dhéanamh i is mó mar a deir sé.
Ach sin a úsáid 2 athróg, nach bhfuil muid ag iarraidh a úsáid athróg sealadach.
Tá 2 bealaí seo a dhéanamh.
Is féidir leat é a dhéanamh ag baint úsáide as do chuid oibreoirí dénártha traidisiúnta.
Mar sin, ní fhios ag aon duine ar bhealach tapa agus salach a dhéanamh go?
D'fhéadfadh sé a ghlacadh i ndáiríre nóiméad ag smaoineamh. Má tá mé -
Feicfidh mé a leagtar ar an bhfadhb suas cosúil siad a iarraidh. Mar sin má tá mé 2 athróg, A, a bhfuil ach slánuimhir
go bhfuil siad a thabhairt dom, agus B athróg tsuim, a bhfuil eile slánuimhir go mé a thabhairt.
Mar sin, má tá mé ar na 2 athróg, anois is mian liom a mhalartú leo.
An traidisiúnta, ag baint úsáide as do chuid oibreoirí dénártha rialta, ciallóidh mé, cosúil le +, -, ÷.
Ní oibreoirí bitwise a ghníomhóidh ar chlár dénártha.
Mar sin, ag baint úsáide as -, +, ÷, agus dóibh siúd go léir.
D'fhéadfadh muid a mhalartú ag déanamh rud éigin cosúil le a = a + b, agus b = a - b, a = a - b.
Mar sin, sanity a sheiceáil, agus ansin beidh a fheiceáil cén fáth go n-oibríonn muid.
Ligean le rá a = 7, b = 3, ansin a + b ag dul a bheith 10.
Mar sin, táimid ag leagan síos anois 10 =, agus ansin tá ag éirí linn b = a - b.
Mar sin, tá ag éirí linn b = a - b, a bhfuil ag dul a bheith 7, agus b = a - b arís,
nó a = a - b. Cé acu ag dul a bheith 10-7 a bhfuil 3.
Mar sin, anois, i gceart, bhí 'a' 7, b go raibh 3, agus anois tá b 7 agus é 'a' 3.
Mar sin, déanann chineál sin de chiall; is 'a' an teaglaim de na huimhreacha 2.
Ag an bpointe seo, is é 'a' an teaglaim, agus ansin táimid ag dealú amach an b bunaidh,
agus ansin tá muid a dhealú amach cad a bhí an bunaidh 'a.'
Ach nach bhfuil an obair le haghaidh gach uimhir.
Chun seo a fheiceáil, a ligean ar mheas ar chóras; mar sin a cheapann muid de ghnáth na slánuimhreacha mar 32 giotán.
A ligean ar obair ar rud éigin go bhfuil ach cosúil le 4 giotán.
Súil go dtosnódh agam teacht suas le dea-shampla ceart anois.
Mar sin, tá a fhios agam, beidh sé seo a bheith éasca.
Ligean le rá againn 2 huimhreacha 1111, agus 1111; mar sin táimid i dénártha ceart anois.
I deachúlacha iarbhír, más mian leat chun smaoineamh ar é an mbealach sin, a. = 15 agus b = 15
Agus mar sin táimid ag súil, tar éis dúinn mhalartú leo - nach bhfuil siad fiú a bheith ar an líon céanna,
ach rinne mé é ar an mbealach seo.
Ní Lig a dhéanamh iad na huimhreacha céanna. Déanaimis a dhéanamh 1111 agus 0001.
Mar sin, a = 15 agus b = 1.
Tar éis dúinn a mhalartú leo, táimid ag súil 'a' a bheith 1 agus b a bheith 15.
Mar sin, is é ár chéad chéim a = a + b.
Ár uimhreacha ach 4 giotán leathan, agus mar sin 'a,' a bhfuil 1111, + b, a bhfuil 0001,
ag dul chun deireadh suas a bheith 10000, ach ní mór dúinn ach 4 giotán.
Mar sin, anois = 0.
Agus anois ba mhaith linn a shocrú b = a - b - i ndáiríre, oibríonn sé seo fós amach breá.
a = a - a ligean ar a fheiceáil má oibríonn seo amach foirfe - b.
Mar sin, ansin b = 0-1, rud a bheadh ​​fós 15, agus ansin a = a - b, bheadh ​​a 1.
B'fhéidir a dhéanann an obair seo.
Dar liom níl cúis ní oibríonn sé úsáid a bhaint as go rialta.
Maith go leor, mar sin ag obair ar an toimhde nach bhfuil sé ag obair le hoibríochtaí dénártha rialta,
agus beidh mé ag lorg - beidh mé ag Google a fheiceáil má tá sin fíor.
Mar sin, ba mhaith linn a dhéanamh ag baint úsáide as na hoibreoirí bitwise, agus tá an clue anseo XOR.
Mar sin, a thabhairt isteach XOR (^) más rud é nach bhfuil tú ag feiceáil go fóill.
Tá sé, arís, oibreoir bitwise sin gníomhaíonn sé giotán ngiotán, agus it's -
Má tá tú ar an giotán 0 agus 1, ansin beidh sé seo 1.
Má tá tú ar an 1 giotán agus 0, beidh sé a bheith 1, tá tú ar an 0 giotán agus 0 beidh sé a bheith 0,
agus má tá tú ar an 1 giotán agus 1 beidh sé a bheith 0.
Mar sin, tá sé cosúil NÓ. Má tá ceachtar de na píosaí fíor, tá sé 1, ach murab ionann NÓ, ní féidir é a araon giotán atá fíor.
Ba mhaith NÓ tá sé seo a bheith 1, bheadh ​​XOR mbeadh sé seo a bheith 0.
Mar sin, táimid ag dul go dtí gur mian XOR a úsáid anseo.
Smaoinigh air ar feadh nóiméid; Tá mé ag dul go Google.
Bhuel, ní féidir leat a léamh sin; Tá mé faoi láthair ar an leathanach algartam XOR babhtála.
Beidh súil go dtosnódh seo a mhíniú cén fáth go can't I -
Tá sé seo go díreach an algartam go raibh againn ach.
Agam nach bhfuil fós a fheiceáil cén fáth - Caithfidh mé a roghnaíodh ach sampla olc,
ach sa chás seo nuair a tharla 'a' a bheith 0, tar éis dul go dtí 5 giotán, mar sin anois is 'a' 0,
is é sin rud ar a dtugtar "thar maoil slánuimhir."
De réir Vicipéid, "Murab ionann agus an babhtála XOR, éilíonn an athrú go n-úsáideann sé roinnt modhanna
a ráthú nach x + y bheith ina chúis le thar maoil slánuimhir. "
Mar sin, mbaineann sé seo fadhbanna acu; go raibh sé seo thar maoil slánuimhir, ach rinne mé rud éigin mícheart.
Níl mé cinnte. Bainfidh mé triail as chun teacht suas le ceann eile.
[Mac Léinn] Bhuel nach bhfuil, thar maoil slánuimhir nuair a bhíonn tú ag iarraidh a chur ar roinnt in ann
níos mó ná an méid giotán tú ar fáil?
Yeah. Tá 4 giotán. That's - bhí 4 giotán, déanaimid ár ndícheall ansin 1 a chur air, mar sin againn deireadh suas le 5 giotán.
Ach an beagán cúigiú Faigheann díreach ghearradh amach, yeah.
D'fhéadfadh sé i ndáiríre -
[Mac Léinn] An bhfuil go caith tú ar earráid, nó a dhéanann go - bheadh ​​caith earráid sin?
Uimh Mar sin, níl aon earráid. Nuair a fhaigheann tú go dtí an leibhéal tionól, le beagán speisialta
tá sé leagtha áit éigin a dúirt go raibh thar maoil, ach i C tú de chineál ar ní a dhéanamh a déileáil leis sin.
Ní féidir leat déileáil iarbhír leis ach amháin má úsáideann tú treoracha cóimeála speisialta i C.
A ligean ar smaoineamh ar babhtála XOR.
Agus Measaim go bhféadfadh an t-alt Vicipéid a bheith freisin ag rá go bhfuil -
Mar sin, thug sé suas freisin uimhríocht modúlach, mar sin buille faoi thuairim mé go raibh mé, go teoiriciúil, ag déanamh uimhríocht modúlach
nuair a dúirt mé go 0 - Is é 1 15 arís.
Mar sin, d'fhéadfadh go hiarbhír - ar próiseálaí rialta a dhéanann 0-1 = 15.
Ós rud é go táimid ag deireadh suas ag 0, ní mór dúinn a dhealú 1, mar sin ansin wraps sé díreach ar ais timpeall 1111.
Mar sin, d'fhéadfadh an algartam obair iarbhír, an a + b, an a - b, b - a; d'fhéadfadh a bheith fíneáil.
Ach tá roinnt próiseálaithe nach é sin a dhéanamh, agus mar sin ní bheadh ​​sé breá sna cinn ar leith.
Beidh babhtála XOR obair ar aon próiseálaí. Maith go leor.
Is é an smaoineamh go bhfuil sé ceaptha a bheith mar an gcéanna, cé.
Cá bhfuil muid ag baint úsáide XOR a fháil ar bhealach an t-eolas ar an dá i 1 de na hathróga,
agus ansin tarraing amach an fhaisnéis na n-athróg aonair arís.
Mar sin, ní duine ar bith a bhfuil smaointe / an freagra?
[Freagra na Mac Léinn, dothuigthe]
Mar sin, ba chóir an obair seo, agus freisin, is é XOR cómhalartach.
Beag beann ar an t-ordú seo 2 líon tharlaíonn a bheith i suas anseo,
Tá an toradh seo ag dul a bheith mar an gcéanna.
Mar sin, a ^ b Is b ^ a.
D'fhéadfadh tú a fheiceáil freisin seo scríofa mar ^ = b, b ^ = a, a ^ = b arís.
Mar sin, tá an ceart seo, agus a fheiceáil cén fáth seo oibreacha, smaoineamh ar an giotán.
Ag baint úsáide as uimhir smallish, a ligean ar rá 11,001, agus 01,100.
Mar sin, tá sé seo 'a'; tá sé seo b.
Mar sin, a ^ = b.
Táimid ag dul a bheith ag leagan 'a' = chuig an XOR na rudaí 2.
Mar sin, 1 Is é ^ 0 1; 1 ^ 1 Tá 0; 0 ^ 1 Tá 1, agus 0 ^ 0 0 = = 1 ^ 0 Is é 1.
Mar sin, 'a,' má fhéachann tú ar an uimhir dheachúlach, tá sé ag dul a bheith -
nach bhfuil tú ag dul a fheiceáil i bhfad ar an gcaidreamh idir an bunaidh 'a' agus an nua ','
ach ag féachaint ar an giotán, is é 'a' anois cosúil le mogalra na faisnéise
an dá an bunaidh 'a' agus an b bunaidh.
Mar sin má thógaimid b ^ a, feicimid go beidh orainn deireadh suas ag an bunaidh 'a.'
Agus má táimid a chur ar an bunaidh 'a' ^ an nua ',' fheicimid muid suas go deireadh ag an b bunaidh.
Mar sin, (a ^ b) ^ b = an bunaidh 'a.'
Agus (a ^ b) ^ a = b an bunaidh.
Tá - tá ar bhealach eile a fheiceáil seo XOR rud ar bith é féin i gcónaí 0.
Mar sin, 1101 ^ 1101, ina bhfuil na píosaí ag dul a bheith mar an gcéanna.
Mar sin riamh go bhfuil dul chun bheith ina gcás ina bhfuil 1 is 0 agus an ceann eile 1.
Mar sin, is é seo 0000.
An rud céanna leis seo. (A ^ b) ^ b Is mar ^ (b ^ b).
(B ^ b) ag dul a bheith 0; ina bhfuil ^ 0 dul ach a bheith mar ',' ós rud é go bhfuil gach giotán 0.
Mar sin, na cinn amháin go bhfuil dul chun bheith ina raibh 'a' dtús 1 - bhí na cinn.
Agus an smaoineamh céanna anseo; Tá mé cinnte go leor tá sé freisin cómhalartach.
Yeah. Rinne mé a rá roimh go raibh sé cómhalartach.
An ^ 'a,' agus tá sé comhthiomsaitheach, mar sin anois (b ^ a) ^ a.
Agus is féidir linn a dhéanamh b ^ (a ^ a).
Agus mar sin arís, a fháil againn ar an b bunaidh.
Mar sin, tá 'a' anois an teaglaim de 'a' b agus le chéile.
Ag baint úsáide as ár n-teaglama nua 'a' rá linn b = teaglama 'a' ^ an b bunaidh, a fháil againn an bunaidh 'a.'
Agus anois teaglama = 'a' ^ an b nua, a raibh an bunaidh - tá nó a anois an méid a bhí 'a' nó b.
Sin an cás seo síos anseo. Is é seo an = b, b d'aois.
Mar sin, anois tá gach rud ar ais san ord a bhabhtáil.
Má d'fhéach againn i ndáiríre ar an giotán, b = a ^ b, tá dul chun XOR na 2,
agus tá an freagra ag dul a bheith seo, agus ansin a = a ^ b é XORing na 2 agus is é an freagra seo.
Ceisteanna? Maith go leor. Mar sin, tá an ceann deireanach beagán i bhfad níos deacra.
[Mac Léinn] Sílim go bhfuil sé ceist faoi. >> Oh, tá brón orainn.
[Mac Léinn] Cad é i ndáiríre níos tapúla? Má úsáideann tú an XOR, nó go bhfuil sé má tá tú a fhógairt athróg nua?
Mar sin, cad iarbhír níos tapúla, á dhearbhú athróg nua nó ag baint úsáide as XOR a mhalartú?
Is é an freagra, i ngach dóchúlacht, athróg sealadach.
Agus is é sin mar aon uair amháin tá sé le chéile síos - mar sin ag an leibhéal cóimeála,
níl aon rud den sórt sin mar athróga áitiúil nó aon athróg sealadach nó aon cheann de stuif seo.
Tá siad ag díreach cosúil - níl cuimhne, agus tá cláir.
Tá na cláir ina bhfuil rudaí ag tarlú go gníomhach.
Ní gá duit a chur 2 rudaí i gcuimhne; cuir tú rudaí 2 i gcláir.
Agus tú rudaí a thabhairt ó chuimhne i cláir a chur ansin iad,
agus ansin go dtiocfadh leat iad a chur ar ais i gcuimhne, ach a tharlaíonn ar fad ar an ngníomh i gcláir.
Mar sin, nuair a bhíonn tú ag baint úsáide as an gcur chuige sealadach athraitheach, de ghnáth cad a tharlaíonn
tá na huimhreacha 2 cheana féin i gcláir.
Agus ansin ón bpointe sin ar aghaidh, tar éis atá tú mhalartú leo,
beidh sé tús ach úsáid a bhaint as an gclár eile.
Áit ar bith a bhí tú ag baint úsáide b, beidh sé úsáid ach an clár go raibh a stóráil cheana 'a.'
Mar sin, nach gá é a dhéanamh aon rud a dhéanamh i ndáiríre an babhtála. Yeah?
[Mac Léinn] Ach a thógann sé chomh maith cuimhne níos mó, ceart?
Beidh sé a ghlacadh ach amháin cuimhne níos mó má ní mór é a stóráil go sealadach athróg.
Cosúil má tá tú úsáid níos déanaí go bhfuil athróg sealadach arís áit éigin,
ansin - nó is féidir leat a shannadh rud éigin a ghabhann leis an athróg sealadach.
Mar sin, más rud é ag aon phointe i am 'a,' b i teocht bhfuil luachanna ar leith nó rud éigin,
ansin tá sé ag dul a bheith áiteanna ar leith i gcuimhne, ach tá sé fíor go
tá athróg áitiúla go leor a bheith ann ach amháin i gcláir.
Agus sa chás sin, riamh é a chur i gcuimhne, agus mar sin riamh tá tú ag wasting cuimhne.
Maith go leor. Is ceist seo caite le beagán níos mó.
Mar sin anseo, ar an fearas CS50, tá foclóir.
Agus is é an chúis atá leis seo toisc [?? B66] Is litreoir gcás ina mbainfidh tú a bheith ag scríobh
baint úsáide as táblaí hash nó iarracht a nó roinnt struchtúr sonraí.
Tá tú ag dul a bheith ag scríobh litreoir, agus tú ag dul a bheith ag baint úsáide as an foclóir sin a dhéanamh.
Ach chun an fhadhb seo, tá muid ag dul ach chun breathnú suas a fheiceáil má tá focal amháin sa bhfoclóir.
Mar sin, in ionad a stóráil an foclóir iomlán i roinnt struchtúr sonraí
agus ag féachaint ansin thar doiciméad ar fad a fheiceáil má tá rud ar bith mílitrithe,
ba mhaith linn ach a fháil 1 focal. Mar sin, is féidir linn a scanadh díreach os cionn an foclóir iomlán
agus ní má táimid teacht ar an bhfocal san fhoclóir ar fad, ansin ní raibh sé in ann.
Má táimid scanadh ar an foclóir iomlán agus ná an focal a fheiceáil, ansin tá muid go maith, fuair muid é.
Deir sé anseo go ba mhaith linn tús a chur ag féachaint ar fheidhm comhad-láimhseáil C,
ós rud é ba mhaith linn a léamh ar an foclóir,
ach beidh mé a thabhairt ar an leid anseo mar go bhfuil feidhmeanna ba cheart duit smaoineamh ar.
Beidh mé iad a scríobh ar Spásanna.
Mar sin, na cinn is mó go mbainfidh tú ag iarraidh chun breathnú ar a f oscailte agus ansin, gan dabht, dúnta f,
a théann ag an deireadh do chlár, agus f scanadh f.
D'fhéadfá a úsáid freisin f léamh, ach tú dócha nach bhfuil ag iarraidh a
toisc go - ní gá duit deireadh suas gá sin.
F scanadh f cad a bhfuil tú ag dul a bheith ag baint úsáide a scanadh ar an bhfoclóir.
Agus mar sin ní gá duit chun cód suas an réiteach, ach déan iarracht agus is maith pseudo-cód do bhealach a dhéanamh
a réiteach, agus ansin beidh muid é a phlé.
Agus i ndáiríre, ó thug mé cheana tú seo, má théann tú isteach in aon teirminéal nó ar do fearas ar bhlaosc,
Ba mhaith liom - I de ghnáth - más rud é nach bhfuil tú ag feiceáil go fóill, níl a fhios agam má rinne tú sa rang,
ach fear, agus mar sin ar na leathanaigh fear, deas úsáideach le haghaidh breathnú ar fheidhm go leor i bhfad aon.
Mar sin, is féidir liom a dhéanamh, cosúil le, f fear, scanadh f.
Tá sé seo anois ar an eolas mar gheall ar an teaghlach f scanadh feidhmeanna.
Raibh mé in ann a dhéanamh freisin f fear, oscailte, agus beidh go dtugann na sonraí sin dom.
Mar sin, má tá a fhios agat cad fheidhm atá in úsáid agat, nó go bhfuil tú ag léamh cód
agus a fheiceann tú roinnt feidhm agus tá tú cosúil le, "Cad a dhéanamh?"
Just a fear ainm na feidhme sin.
Tá cúpla samplaí aisteach nuair a bheadh ​​agat a rá
mhaith. fear 2 an t-ainm fheidhm, nó de dhéantús an 3 an t-ainm fheidhm,
ach tá tú ach a dhéanamh nach más rud é ainm na feidhme fear a tharlóidh a bheith ag obair den chéad uair.
[Mac Léinn] sin, tá mé ag léamh an leathanach fear do oscailte, ach tá mé ag dhaoine eatarthu go fóill ar conas é a úsáid agus an clár.
Maith go leor. A lán de na leathanaigh fear níos lú ná cabhrach.
Tá siad níos mó cabhrach má tá a fhios agat cheana féin cad a dhéanann siad
agus ansin is gá duit ach cuimhneamh ar an ord na n-argóintí nó rud éigin.
Nó is féidir iad a thabhairt duit forbhreathnú ginearálta, ach tá cuid acu an-mór.
Cosúil f scanadh f, chomh maith. Tugann sé leat an t-eolas do gach ceann de na feidhmeanna,
agus 1 líne a tharlaíonn síos anseo a rá, "léann F scanadh f ón bpointe teaghrán nó sruth."
Ach f oscailt. Mar sin, cé linn a úsáid f oscailte?
An smaoineamh ar chlár a riachtanais comhad a dhéanamh I / O go
mór duit an chéad chun an comhad a oscailt mian leat chun rudaí a dhéanamh leis, agus gan amhras,
rudaí a léamh as an gcomhad agus rudaí a dhéanamh leo.
F oscailte cad a úsáid againn chun an comhad a oscailt.
Is é an rud a fháil againn ar ais, mar sin cad comhad a theastaíonn uainn a oscailt, tugann sé dúinn an -
i anseo a deir sé "/ úsáideora / share / dict / focail."
Is é seo an comhad a ba mhaith linn a oscailt, agus ba mhaith linn a oscailt -
ní mór dúinn a shonrú go sainráite cé acu ba mhaith linn a oscailt chun léamh nó más mian linn a oscailt chun scríobh.
Níl cúpla péirí agus rudaí mar sin, ach ba mhaith linn seo a oscailt chun é a léamh.
Is mian linn a léamh ó na comhaid.
Mar sin, cad a dhéanann an tuairisceán seo? Tuairisceáin sé comhad réalta (*),
agus beidh mé a thaispeáint ach gach rud ar an f athraitheach, agus mar sin *,
arís, tá sé ina pointeoir, ach nach bhfuil muid ag iarraidh chun déileáil le leideanna.
Is féidir leat smaoineamh f mar atá, is f anois an athróg bhfuil tú ag dul a úsáid chun ionadaíocht a dhéanamh ar an gcomhad.
Mar sin, más mian leat a léamh ó na comhaid, a léamh tú ó f.
Más mian leat a dhúnadh ar an comhad, a dhúnann tú f.
Mar sin, ag deireadh an chláir nuair is mian linn dosheachanta a dhúnadh an comhad, cad ba cheart dúinn a dhéanamh?
Ba mhaith linn f a dhúnadh.
Mar sin, anois an fheidhm comhad seo caite go bhfuil muid ag dul a iarraidh úsáid a scanadh f, f scanadh f.
Agus cad é go ndéanann sé scans thar an chomhad ag lorg patrún a mheaitseáil.
Ag Breathnú ar an leathanach fear anseo, feicimid o f scanadh f, neamhaird a dhéanamh ar an luach ar ais do anois.
Is é an chéad argóint an sruth * comhad, mar sin tá an chéad argóint táimid ag dul a iarraidh a pas a fháil f.
Táimid ag scanadh ar f.
Is é an dara hargóint teaghrán formáide.
Beidh mé a thabhairt duit teaghrán formáide ceart anois.
Sílim go bhfuil muid a tharlóidh a rá, 127s \ n, a lán de go bhfuil gá leo.
Is é an smaoineamh ar cad é go teaghrán formáide, is féidir leat smaoineamh ar f scanadh mar an os coinne na f phriontáil.
F cló Mar sin, f cló linn a úsáid freisin leis an gcineál seo pharaiméadar formáid,
ach i f gcló bhfuil muid ag déanamh - ligean ar breathnú ar comhionann.
Mar sin, a phriontáil f, agus níl i ndáiríre freisin f cló f, ina bhfuil an chéad argóint ag dul a bheith f.
Nuair a phriontáil duit f, d'fhéadfadh muid a rá rud éigin cosúil le, "cló 127s \ n" agus ansin má éiríonn linn é roinnt téad,
tá sé ag dul i gcló an teaghrán seo agus ansin ar líne nua.
Cad iad na 127 acmhainn, tá mé cinnte go leor, ach ní mé teoranta féin é,
Ní bheadh ​​ort fiú a rá '127 'sa f gcló,
ach cad a chiallaíonn sé a phriontáil ar an 127 chéad carachtair.
Mar sin, tá mé cinnte go leor go bhfuil an cás. Is féidir leat a Google as sin.
Ach i an ceann eile Tá mé beagnach dearfach ciallaíonn sé go.
Mar sin, is é seo a phriontáil ar an 127 chéad carachtair, ina dhiaidh sin ar líne nua.
F scanadh f anois, in ionad féachaint ar athraitheach agus í a phriontáil,
tá sé ag dul chun breathnú ar roinnt téad, agus an patrún isteach an athróg a stóráil.
A ligean ar úsáid iarbhír f scanadh i sampla éagsúla.
Mar sin a ligean le rá a bhí againn roinnt o, x = 4,
agus bhíomar ag iarraidh a chruthú ar shraith déanta as - ag iarraidh a chruthú ar an teaghrán
go raibh cosúil le, beidh sé seo teacht suas i bhfad níos déanaí,
rud éigin go díreach cosúil le 4.jpg.
Mar sin, d'fhéadfadh sé seo a bheith ar chlár nuair a bheidh tú ag cuntar suim,
suim i ngleic i, agus is mian leat a shábháil a bunch na n-íomhánna.
Mar sin, mian leat a shábháil i.jpg, áit a bhfuil mé roinnt atriall de do lúb.
Mar sin, conas is féidir linn a dhéanamh ar an teaghrán seo don JPEG?
Má bhí tú a phriontáil 4.jpg, d'fhéadfadh muid a rá go díreach f cló, d.jpg%,
agus ansin bheadh ​​sé a phriontáil don JPEG.
Ach más mian linn a shábháil 4.jpg téad, úsáidimid f scanadh.
Mar sin, teaghrán s - i ndáiríre can't againn - carachtar, ruabhric s, a ligean ar dul 100.
Mar sin, dhearbhaigh mé díreach tar éis roinnt sraith de 100 carachtar,
agus go bhfuil an méid táimid ag dul dosheachanta chun a stóráil go JPEG isteach
Mar sin, táimid ag dul a úsáid scanadh f, agus an fhormáid, conas ba mhaith linn a rá d.jpg%
d'fhonn a phriontáil 4.jpg, úsáidtear an fhormáid seo ag dul a bheith d.jpg%.
Mar sin, tá an fhormáid d.jpg%, cad ba mhaith linn a chur in ionad% d le x,
agus anois ní mór dúinn a stóráil go teaghrán áit éigin.
Agus is é áit táimid ag dul a stóráil an teaghrán seo i s eagar.
Mar sin, tar éis an líne de chód, s, má chuirtear i gcló í f%, de na s athraitheach,
tá sé ag dul i gcló 4.jpg.
Mar sin f scanadh f mar an gcéanna le scanadh f, ach amháin anois tá sé ag iarraidh níos mó ná an comhad seo
ar cad a stóráil i s.
Sin cad é an argóint deiridh ag dul a bheith.
Ba mhaith linn a stóráil - "teaghlach f Scan scanadh feidhmeanna sa dá réir formáid mar a rinne thíos.
Má tá aon a stóráil i na pointí suíomh a d'fhéadfadh tú ar ais - "
No, d'fhéadfadh muid a bheith go maith. Lig dom smaoineamh ar feadh soicind.
Mar sin, ní dhéanann scanadh f - cad é an heck an fheidhm a dhéanann é sin?
Mar sin, nach bhfuil scanadh f ag dul a ghlacadh slánuimhir agus ponc jpg a dhéanamh.
Tá sé seo ag dul go dtí [mumbles].
Sábháil athróg slánuimhir i dteaghrán slánuimhir C.
Cad é seo athróg, nó cad é a dtugtar an fheidhm seo?
Tá. That's - yes. Mar sin, cad mé a shainiú chun tú a bhí os comhair s cló f,
a - a bhfuil ciall i bhfad níos mó, cén fáth a dúirt mé go raibh sé i bhfad níos mó cosúil le f phriontáil.
Scan f tá sé fós cineál cosúil f cló, ach tá f gcló ag dul a scanadh sé os a chionn
agus in ionad na hathróga agus anois é a stóráil i teaghrán.
In ionad a phriontáil, siopaí sé i teaghrán.
Mar sin, neamhaird a dhéanamh go hiomlán. Is féidir leat smaoineamh go fóill ar an sonraitheoir fhormáid mar sin de f cló.
Mar sin anois, má bhíomar ag iarraidh a dhéanamh ar an rud 4.jpg, ba mhaith linn a dhéanamh f cló s, x seo.
Mar sin, cad scanadh f é a dhéanamh - cad a bhí do cheist ag dul a bheith?
[Mac Léinn] Tá mé ag dhaoine eatarthu ach ar cad tá muid ag iarraidh a dhéanamh ar dheis anseo
leis an JPEG. An féidir leat a mhíniú an am sin 1 níos mó?
Mar sin, ba é seo - tá sé leasmhar níos lú f scanadh f anois; tá súil againn, beidh sé a cheangal ar ais i roinnt de chineál ar bhealach.
Ach cad a dhéanfaidh mé ar dtús bhí sé ar intinn a thaispeáint go raibh - tá sé seo i ndáiríre a bhaineann go díreach leis na [?? F5]
Tá tú ag dul a bheith ag baint úsáide f cló s, más rud é, a rá ní mór dúinn 100 íomhánna,
agus is mian leat a léamh íomhá 1.jpg, 2.jpg, 3.jpg.
Mar sin, d'fhonn a dhéanamh, is gá duit a f oscailte, agus ansin caithfidh tú chun pas a fháil sa téad gur mian leat a oscailt.
Mar sin, ba mhaith linn ag iarraidh a oscailt 1.jpg; d'fhonn a chruthú ar an teaghrán atá 1.jpg,
f cló a dhéanann muid s de% d.jpg--againn nach raibh a dhéanamh le haghaidh slánuimhir i = 0.
i <40, i + +.
Mar sin,% s f cló d.jpg de i.
Mar sin, tar éis an líne seo, tá anois ar an athróg nó í eagar ag dul go dtí 1.jpg.
Nó, 0.jpg, 1.jpg, 2.jpg. Agus mar sin is féidir linn a oscailt, ar a seal, gach íomhá chun é a léamh.
Mar sin, go bhfuil an méid a phriontáil s f dhéanann. An bhfeiceann tú cad a phriontáil s f ag déanamh anois?
[Mac Léinn] Maith go leor, mar sin tá sé ag cur - cruthaíonn sé ar shraith, something.jpg, agus ansin siopaí sé.
Tá. Cruthaíonn sé - tá sé seo eile teaghrán formáide, díreach cosúil le f scanadh agus f a phriontáil,
nuair a cuireann sé gach ceann de na hathróga isteach an dara hargóint a d'fhéadfadh, a bheith s i gcomparáid le i.
B'fhéidir - Ciallaíonn mé, go bhfuil an cás. Ach is cuma cén t-ordú na n-argóintí.
Tá sé seo ag dul a chur isteach gach ceann de na hathróga i teaghrán formáide
agus a stóráil ansin isteach inár maolán; tugaimid go maolán, tá sé nuair a bhíonn muid ag a stóráil ar an teaghrán.
Mar sin, táimid ag a stóráil taobh istigh de na s an teaghrán i gceart formáidithe,% d tar éis a n-ionad le 4.
[Mac Léinn] Mar sin, má rinne muid seo, tá an f athróg ach ag dul a bheith athshannadh?
Tá. Mar sin, ba chóir dúinn a dhúnadh ar an f bhunaidh roimh é seo a dhéanamh.
Ach - agus ansin freisin, más rud é nach raibh an f oscailt suas anseo, ansin ba mhaith linn a rá -
Yeah. Ach bheadh ​​sé a oscailt céad comhaid éagsúla.
[Mac Léinn] Ach ní bheadh ​​muid in ann rochtain a nó - ceart go leor.
Maith go leor. Mar sin, tá scanadh f, f scanadh f, de chineál ar an smaoineamh céanna,
ach in ionad, in ionad a stóráil sé isteach ar teaghrán, tá sé níos mó cosúil go bhfuil tú anois
ag dul thar Sting agus meaitseáil patrún i gcoinne an téad agus a stóráil ar na torthaí i athróg.
Is féidir leat úsáid a bhaint f scanadh a pharsáil os cionn rud éigin cosúil le 4.jpg, agus 4 slánuimhir a stóráil i x slánuimhir suim.
Sin an méid is féidir linn a úsáid f scanadh do.
F scanadh f ag dul a dhéanamh go bhfuil ag an líne ordaithe.
Tá mé i ndáiríre cinnte go leor tá sé seo cad a dhéanann an leabharlann CS50.
Mar sin, nuair a deir tú, "a fháil o," tá sé scanadh f-áirítear níos mó ná - Is é scanadh f an bealach a gheobhaidh tú ionchur úsáideoir.
F scanadh f ag dul a dhéanamh ar an rud céanna ach ag baint úsáide as comhad a scanadh os a chionn.
Mar sin anseo, tá muid ag scanadh ar an comhad seo.
Is é an patrún muid ag iarraidh a mheaitseáil ar roinnt teaghrán go bhfuil 127 carachtair ar fad
dhiaidh sin ar líne nua
Mar sin, tá mé cinnte go leor gur féidir linn fiú ach a rá "comhoiriúnach s," ós rud é san fhoclóir
tharlóidh againn a bheith acu, táimid ráthaithe aon focal go fada,
agus freisin f scanadh f Beidh, I mo thuairimse, ag stopadh ag an líne nua is cuma cén.
Ach beidh muid ag áireamh an líne nua sa chluiche, agus -
[Mac Léinn] Más rud é nach raibh muid san áireamh ar an líne nua nach mbeadh, é a fháil codanna de focal?
É - gach - ag féachaint ar an Dictionary -
Mar sin, sa bhfoclóir, is iad seo ar fad ar ár bhfocal.
Tá gach ceann ar líne nua.
Tá an f scanadh ag dul a phiocadh suas an focal.
Más rud é nach bhfuil muid san áireamh an líne nua, ansin tá sé indéanta go mbeidh an f scanadh eile a léamh ach an líne nua.
Ach lena n-áirítear líne nua ansin neamhaird a dhéanamh ach an líne nua.
Ach ní beidh orainn a fháil mar chuid de focal, ós rud é go bhfuil muid ag léamh i gcónaí suas go dtí an líne nua, is cuma cén.
[Mac Léinn] Ach cad má tá tú cuardach a dhéanamh ar an focal "cissa," cosúil cissa.
An mbeidh sé teacht go, agus a rá tá sé ina cluiche?
Mar sin anseo táimid ag - beidh sé arna léamh i - tá sé seo i ndáiríre pointe maith.
Ní Táimid ag baint úsáide as an gcomhar reatha - go bhfuil an focal táimid ag lorg an argóint chéad líne ordaithe.
Mar sin, téad, focal = argv 1.
Mar sin, tá an teaghrán táimid ag lorg argv 1.
Ní Táimid ag lorg focal ar chor ar bith in ár f scanadh.
Cad a bhí muid ag déanamh leis an scanadh f ag fáil gach focal sa bhfoclóir,
agus ansin nuair a bhíonn muid an focal sin táimid ag dul strcmp a úsáid chun comparáid a dhéanamh astu.
Táimid ag dul a chur i gcomparáid lenár focal agus cad a léamh againn ach isteach
Mar sin, gan dabht, tá muid ag dul go dtí deireadh suas ag déanamh a bunch de scanadh FS
go dtí go dtarlaíonn sé ach ionas go mbeidh f scanadh ais -
beidh sé ar ais amháin, chomh fada agus go bhfuil a mheaitseáil sé focal nua,
agus beidh sé ar ais rud éigin eile chomh luath agus gur mhainnigh sé a mheaitseáil leis an focal.
Táimid ag léamh thar an foclóir iomlán, a stóráil líne ar líne gach focal isteach sa s athraitheach.
Ansin, táimid i gcomparáid focal le s, agus más rud é i gcomparáid == 0,
strcmp a tharlaíonn a thabhairt 0 má rinneadh ar chluiche.
Mar sin, má bhí sé 0, ansin is féidir linn a phriontáil f, a mheaitseáil,
nó focal i bhfoclóir, nó is cuma cad ba mhaith leat f a phriontáil.
Agus ansin - nach bhfuil muid ag iarraidh a f dhúnadh arís agus arís eile.
Is é seo an saghas ruda a ba mhaith linn a dhéanamh, agus nach bhfuil muid ag lorg ach le haghaidh focal sa bhfoclóir.
Mar sin, d'fhéadfadh muid a dhéanamh, más rud é bhíomar ag iarraidh a chuardach le haghaidh a n-patrún, cissa, mar a dúirt tú roimh,
má bhí againn a chuardach le haghaidh an patrún, ansin bheadh ​​sé theipeann i gcás
toisc nach bhfuil go hiarbhír focal, ach ceann amháin de na focail san fhoclóir a tharlaíonn go ndéanfaí ann.
Mar sin, bheadh ​​sé comhoiriúnach leis an focal, ach nach é seo fo-thacar de focal ar fhocal féin.
Ach ní go conas a bhfuil muid ag baint úsáide as é; táimid ag léamh i ngach focal
agus comparáid a dhéanamh ansin an focal atá againn leis an bhfocal.
Mar sin, táimid ag i gcomparáid i gcónaí focail iomlán.
Is féidir liom a chur amach ar na réitigh chun críche níos déanaí.
Tá sé seo de chineál ar fhreagra beagnach an ceart, sílim.
[Comment Mac Léinn, dothuigthe]
Ó, rinne mé a fháil haitheantas coibhneasta de sin roimhe seo? Carachtar s, buille faoi thuairim mé a dúirt muid 127 - mé dearmad cad é an ceann is mó.
Beidh muid a dhéanamh ach 128; mar sin anois tá s fada go leor.
Ní gá aon rud a phriontáil.
Táimid ag dul freisin ag iarraidh a bheith a dhúnadh ár comhad, agus ba chóir a bheith mar gheall ar an freagra ceart.
CS50.TV