pajautaa

Par c++

« previous entry | next entry »
Jan. 2., 2010 | 08:22 pm
posted by: atheist in pajautaa

Varbūt šeit ir kāds, kam šodien mazliet brīvs vakars un ir vēlme apskatīties vienas programmas kodu. Situācija jocīga - savā datorā testpiemēri izpildās, citā - neizpildās. Neko jaunu nevajag, tikai gribu zināt, kas pie vainas un saprast, kā to dīvainību labot.

Jaukie cilvēki, atsaucieties komentāros vai uz epastu egirl@inbox.lv. Tad nosūtīšu kodu un attiecīgos testpiemērus (tādi vispār ir 4). Kods nav garš, ātri var saprast, par ko iet runa.

Paldies jau iepriekš!

Tagad te ir kods, zem kura ir testpiemēri, jo nevarēja tos atsevišķi parādīt, augšā ir apraksts, par neskaidrībām jautājat, jo visu nevar izstāstīt (vismaz ne to, kas katram varētu likties svarīgi).

http://paste.php.lv/6a27b4277d79c35a6d812144d341c946?lang=php

# | jā, ir doma! | Add to Memories


Comments {15}

from: [info]spicausis
date: Jan. 3., 2010 - 01:43 am
#

Tev "tiiriit" funkcija ir pagalam nekorekta: nelaba ievada gadījumā, pēc n_kods.erase(i, 1): a) n_kods garums samazināsies, kā rezultātā cikls, kas strādā 0..gar kļūs pārāk garš; b) pēc i-pozīcijas izdzēšanas šai pozīcijā būs (i+1) simbols, kuru tu ciklā vairs nepārbaudīsi. Labāk veido jaunu stringu no atļautajiem simboliem, nevis dzēs veco.

Ja tev kaut kur metas negaidīti "?" tekstu beigās, tad izmaini kodu tā, lai tu varētu atšķirt, kurā vietā tas tieši veidojas — vai "dekodeet" neatrod simbolu, vai jokainā bufera apstrāde pie atkodēšanas aizrijas, vai kas.

Atbildēt