Scrigroup - Documente si articole

Username / Parola inexistente      

Home Documente Upload Resurse Alte limbi doc  

CATEGORII DOCUMENTE





loading...

AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


Bucle Do - While

c

+ Font mai mare | - Font mai mic






DOCUMENTE SIMILARE

Trimite pe Messenger
PROGRAMAREA STRUCTURILOR DE DATE IN C++
Memoria partajata
Struct (inregistrarea)
Accesul la biblioteca standard
VECTORI ORDONATI - APLICATIE : COMPONENTE CONEXE
STRUCURA DE DATE DE TIP GRAF
Pointeri si argumente de functii
PROIECT - un program C++ care citeste de la tastatura un numar natural n
FUNCTII SI STRUCTURA PROGRAMULUI
Operatori logici pe biti

TERMENI importanti pentru acest document

Bucle Do - While

Buclele while si for impartasesc atributul de testare a conditiei

de terminare la inceputul buclei mai degraba decit la sfirsitul

ei, asa cum am discutat in Capitolul 1. Al treilea tip de bucle




in C - bucla do-while - testeaza conditia la sfirsit, dupa ce a

executat intreg corpul buclei; corpul este executat cel putin o

data. Sintaxa ei este

do

instructiune

while (expresie);

'Instructiune' este executata si apoi 'expresie' este

evaluata. Daca este adevarata, 'instructiune' se executa din nou,

s.a.m.d. Daca 'expresie' devine falsa, bucla se termina.

Asa cum este de asteptat, bucla 'do-while' este folosita mai

putin decit while si for, probabil 5% din totalul de folosire a

buclelor. Cu toate acestea, ea este din timp in timp valoroasa, ca

in exemplul urmator, unde functia itoa converteste un numar intr-

un sir de caractere (inversa lui atoi). Lucrarea este putin mai

complicata decit se pare la prima vedere, deoarece metodele usoare

de generare de cifre le genereaza intr-o ordine gresita. Am ales

calea de a genera sirul invers apoi de a-l inversa.

itoa (n, s) /* converteste pe n in caractere in s */

char s[];

int n;

while ((n /= 10) > 0); /* sterge-o */

if (sign < 0)

s[i++] = '-';

s[i] = '0';

reverse(s);

}

Bucla do-while este necesara, sau cel putin convenabila deoarece

cel putin un caracter trebuie pus in matricea s, indiferent de

valoarea lui n. Am folosit de asemenea acoladele in jurul



singurei instructiuni ce compune corpul buclei do-while, chiar

daca nu sint necesare pentru ca cititorul grabit sa nu

considere gresit partea cu while ca fiind inceputul unei bucle

while.

Exercitiul 3.3. In reprezentarea numerelor ca si complemente

fata de 2 versiunea noastra pentru itoa nu functioneaza

pentru numarul negativ cel mai mic, adica pentru valoarea lui n

egala cu -(2 la puterea dimensiune cuvint-1). Explicati de ce.

Modificati functia pentru a functiona corect si pentru aceasta

valoare, indiferent de calculatorul pe care se executa.

Exercitiul 3.4. Scrieti o functie analoaga itob(n, s) care

converteste intregii fara semn n intr-o reprezentare binara

pe caracter in s. Scrieti itoh, care converteste un intreg intr-

un numar haxazecimal.

Exercitiul 3.5. Scrieti o versiune a lui itoa care accepta trei

argumente in loc de doua. Al treilea argument este un cimp de

lungime minima; numarul convertit trebuie completat cu blancuri

la stinga, daca e necesar, pentru a se inscrie in cimpul dat.








Politica de confidentialitate

DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 317
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2020 . All rights reserved

Distribuie URL

Adauga cod HTML in site