source: liacs/da/fibo_queue/standaard.cc@ 399

Last change on this file since 399 was 2, checked in by Rick van der Zwet, 15 years ago

Initial import of data of old repository ('data') worth keeping (e.g. tracking
means of URL access statistics)

File size: 2.8 KB
Line 
1// Enkele standaard functies op variabelen van type `char', `int' of `bool'.
2//
3// Ook de functies `Cijfer' en `Letter' kennen we nu.
4// Rudy van Vliet 14 december 2004
5
6//****************************************************************************
7
8#include "standaard.h"
9
10//****************************************************************************
11
12int KleinsteGetal (int i, int j)
13 // geef het minimum van de twee getallen i en j
14{
15 if (i<=j)
16 return i;
17 else
18 return j;
19
20} // KleinsteGetal
21
22//****************************************************************************
23
24int GrootsteGetal (int i, int j)
25 // geef het maximum van de twee getallen i en j
26{
27 if (i>=j)
28 return i;
29 else
30 return j;
31
32} // GrootsteGetal
33
34//****************************************************************************
35
36int GetalLengte (int Waarde)
37 // retourneer de lengte (in karakters) van het getal Waarde
38 // werkt ook als Waarde negatief is
39{ int WLengte;
40
41 if (Waarde < 0)
42 { WLengte = 1;
43 Waarde = - Waarde;
44 }
45 else
46 WLengte = 0;
47
48 do
49 { WLengte ++;
50 Waarde = Waarde / 10;
51 } while (Waarde != 0);
52
53 return WLengte;
54
55} // GetalLengte
56
57//****************************************************************************
58
59bool Cijfer (char k)
60 // kijk of het karakter `k' een cijfer is of niet
61{
62 if ((k>='0') && (k<='9'))
63 return true;
64 else
65 return false;
66
67} // Cijfer
68
69//****************************************************************************
70
71bool Letter (char k)
72 // kijk of het karakter `k' een letter is of niet
73{
74 if ( ((k>='A') && (k<='Z')) // een hoofdletter
75 || ((k>='a') && (k<='z')) ) // een kleine letter
76 return true;
77 else
78 return false;
79
80} // Letter
81
82//****************************************************************************
83
84char HoofdLetter (char c)
85 // als c een kleine letter is, retourneer de bijbehorende hoofdletter;
86 // anders retourneer gewoon c
87{
88 if ((c>='a') && (c<='z'))
89 return ((char) c - 32);
90 else
91 return c;
92
93} // HoofdLetter
94
95//****************************************************************************
96
97char *ItoA (int Waarde)
98 // transformeer het getal Waarde tot een character-string
99{ int WLengte; // de lengte (in karakters) van Waarde
100 char *GStr;
101
102 WLengte = GetalLengte (Waarde);
103 GStr = new char[WLengte+1];
104
105 if (Waarde<0)
106 { GStr[0] = '-';
107 Waarde = - Waarde;
108 }
109
110 GStr [WLengte] = EOS;
111 WLengte --;
112
113 do
114 { GStr[WLengte] = (char) (Waarde%10 + 48);
115 WLengte --;
116 Waarde = Waarde/10;
117 } while (Waarde!=0);
118
119 return GStr;
120
121} // ItoA
122
123//****************************************************************************
124
125int BtoI (bool b)
126 // zet de boolean b om in een integer (true <-> 1, false <-> 0)
127{
128 if (b)
129 return 1;
130 else
131 return 0;
132
133} // BtoI
134
135//****************************************************************************
Note: See TracBrowser for help on using the repository browser.