<prompt> Tengeneza kirudishio ili kubana vekta ya 2D. Inapaswa kusaidia shughuli za ijayo na hasNext.Tekeleza darasa la Vector2D: Vector2Dint vec huanzisha kitu na vekta ya 2D vec. next hurejesha kipengele kinachofuata kutoka kwa vekta ya 2D na kusogeza pointer hatua moja mbele. Unaweza kudhani kuwa simu zote kwa ijayo ni halali. hasNext hurejesha true ikiwa bado kuna baadhi ya vipengele kwenye vekta, na false vinginevyo.Mfano wa 1:Ingizo Vector2D , ifuatayo , ifuatayo , ifuatayo , hasNext , hasNext , ifuatayo , inaNext 1, 2, 3, 4, , , , , , , Patonull, 1, 2, 3, kweli, kweli, 4, uongoUfafanuziVector2D vector2D Vector2D mpya1, 2, 3, 4;vector2D.ijayo; kurudi 1vector2D.ijayo; kurudi 2vector2D.ijayo; kurudi 3vector2D.hasNext; kurudi Kwelivector2D.hasNext; kurudi Kwelivector2D.ijayo; kurudi 4vector2D.hasNext; kurudi UongoVikwazo: 0 vec.length 200 0 veci.urefu 500 -500 vecij 500 Angalau zaidi simu 105 zitapigwa kwa ijayo na hasNext.Fuatilia: Kama changamoto iliyoongezwa, jaribu kuiandika kwa kutumia iterators katika C pekee au iterators katika Javahttp: docs.oracle.comjavase7docsapijavautilIterator.html.  <response>: chatudarasa la Vector2D: def __init__binafsi, vec: self.vec vec safu binafsi 0 self.col 0 def nextbinafsi: val self.vecself.rowself.col self.col 1 val ya kurudi def hasNextself: huku self.row lenself.vec: if self.col lenself.vecself.row: kurudi Kweli safu binafsi 1 self.col 0 kurudi UongomaelezoAlgorithm ni moja kwa moja kabisa. Tunafuatilia fahirisi safu na col kwa ajili ya kuvuka. Katika utekelezaji wa C na Java, viboreshaji hutumiwa kwa madhumuni sawa.1. Katika mjenzi, tunaanzisha vector ya 2D na kuweka safu ya awali na safu hadi sifuri.2. Katika chaguo za kukokotoa za ifuatayo, tunarudisha thamani inayolingana na fahirisi au virudishi na kuongeza safu wima au kirudia kwa 1.3. Katika chaguo za kukokotoa hasNext, tunaangalia kama tuna kipengele halali na kama sivyo, tunajaribu kusonga mbele hadi safu mlalo inayofuata au kirudishio na kuweka upya safu wima au kirudia hadi 0. Mchakato huu unaendelea. mpaka tupate kipengele halali, au tufikie mwisho wa vekta ya 2D. Iwapo kipengele halali kitapatikana, kinarudi kuwa kweli. Vinginevyo, inarudi uwongo. 