Cześć, jako początkujący bez doświadczenia znający tylko składnie języka c++ piszę do Was z prośbą o ocenę formatowania mojego kodu. Zacząłem czytać "Czysty kod" , jestem jakoś w 1/4 książki i chciałem spróbować coś zrobić samemu, dla praktyki.
Sam program polega na: 1. Zadana jest funkcja jednoargumentowaKod źródłowy:
```cpp #include <iostream> #include <cmath> #include <iomanip> #include <string> #include <sstream> #include <bitset>#define NEEDED_PRECISION 9
#define DEC 4
#define DEC_2 7
#define NEEDED_BITS 8
using namespace std;
string ToStringWithPrecision(double formula){
stringstream localStream;
localStream << fixed << setprecision(NEEDED_PRECISION) << formula;
string result = localStream.str();
return result;
}
string separatedNumber(string formula){
char firstDecimal = formula[DEC+1]; //Plus one , because we need real number not an element.
char seoundDecimal = formula[DEC_2+1];
string numberFromTwoDecimal;
numberFromTwoDecimal.push_back(firstDecimal);
numberFromTwoDecimal.push_back(seoundDecimal);
return numberFromTwoDecimal;
}
string toBin(string numberAfterSeparated){
string binary = bitset<NEEDED_BITS>(stoi(numberAfterSeparated)).to_string();
return binary;
}
void printHex(string numberAfterSeparated){
cout <<"0x" << hex << stoi(numberAfterSeparated);
}
int main(){
const float x = 2.1;
const double y = pow(log10(x - 0.5), 2);
string formula = ToStringWithPrecision(y);
string numberFromFormula = separatedNumber(formula);
string binaryFromSeparatedNumber = toBin(numberFromFormula);
cout << numberFromFormula << endl;
cout << binaryFromSeparatedNumber << endl;
printHex(numberFromFormula);
getchar();
return 0;
}
<p>Pytania:</p>
1. Czy po przeczytaniu kodu mniej więcej wiadomo jak program działa?
2. Czy nazwy funkcji są odzwierciedleniem ich działania?
3. Czy zmienne są odpowiednio nazwane?
4. Czy jest czegoś za dużo lub za mało?
5. Czy angielskie* nazwy są poprawne?
<span style="font-size: xx-small;">**Wiem, że mój angielski jest na słabym poziomie, ale pracuje nad tym*</span>
<p>Jeżeli mógłbym ten program napisać w inny sposób i chcesz mi o tym powiedzieć to prosiłbym o zmieszczenie linków do dokumentacji.</p>
<p>Dzięki za poświęcony czas, na pewno każdą sensowną odpowiedź docenię.</p>