Bir örnek vermek isteyebilirsiniz. kodunuzu algoritmanın bir parçası olmayan dil özelliklerini üzerinde çok fazla duruluyor, o Anlaşılır, yanlış bir sonuç yol açacak şekilde algoritma ile karışık olmayan bir algoritma vardı söylenebilir.
Ben akıl için, öğrenmenin bütün mesele değil Eğil ve tüm doğru kutuları kene, kavramını göstermektir hissedin.
Bir bilgisayar üniversite geçmesine öğretilebilir, ama bir bilgisayar henüz aslında kendisi için düşünmek ve bilgiyi uygulamak için öğretilmelidir olamaz.
Ye ve Mezun neden hiç zihniyettir kusar.
En son yorumun ile ilgili olarak, onun önemli yalancı kod tanımsız gerçekleştirmek. Genellikle Orada o terimler yeniden, ama onun değil sıkı dil ingilizce dışında herhangi fazlasıdır edilmektedir (aksi takdirde olurdu olmak kelimesi kelimesine ayrıştırılır ve infaz edilmesi bir programlama dili)
Önemi pseudocode eti dışarı olan mantık 'mantıklı' ötesinde sözdizimi hakkında aşırı endişelenmenize gerek sisteminin bir parçası olup
Genellikle bu pseudocode hem daha yapabilir veciz ve daha anlaşılır.
Sözdekod da bunu işleme amacıyla dilinde 'sihirli sözdizimi' bir anlayış olan okuyucuya dayanmaz, onlar anlamak için gereken tüm kullanılan terimler olduğunu.
Eğer Ortalama bir kişinin örneğin perl'de bir algoritma vermek olsaydı onlar hat gürültüsünün şap geçmiş görmüyorum, çünkü çoğu insan sadece korku ölebilirler.
Süre:
sub foo {
my @args = @_ ;
my( $a, $b )=(@args[0],@args[1]);
for( @{ $a } ){
$b .= $_ ;
s/id//g;
}
return [$b,$a];
}
Bütün bunlar olsun ortalama kod okuyucuya, perl'de usta birisine bazı tutarlı sense yapabilir, bir "cehennem az önce ne dedin" yanıttır. belgelemek ya çok yardımcı olmuyor.
| there is a subroute foo which can take a list of strings, and a default string,
\- which then iterates all items in that list,
| \- and for each item in that list
| 1. appends the contents of that item to the end of the default string
| 2. removes all instances of the string "id" in that item
|
\ and returns a list, which contains
1. the concatentated default string
2. the modified input list
Aniden az muğlak hale gelir ve halkların daha yüksek bir yüzdeyle bunu anlayabilir.
Yani muhtemelen, algoritma yazma ile yarım egzersiz hayati olduğunu "Sadece sen bunu anlamak kanıtlamak için var, ayrıca sorunun hiçbir şey bilmiyor başkalarına akıl açıklayabilir kanıtlamak zorunda" bir egzersizdir yetenek ihtiyacınız. Eğer yaptıklarını iletişim kuramazsa, kimse bunu kullanabilirsiniz.
Orada bir algoritma var olmayan koduyla bu pis küçük sorun, aynı zamanda, ve bu kod olabilir olduğunu bakmak doğru, ama ne yapamazsınız düşünmek öyle ve doğru yapmak ve olmazsa don 't, fark kod ters mühendislik okurken insanlar bunu bozmak ve kopyalar kırık algoritma. iyi değil. Daha iyi insan şeklinde algoritma 'Bu ben yapacağım istediğim şey' çevirir