PolaczeK Posted December 24, 2016 Report Share Posted December 24, 2016 Witam! Mam takie zadanie: Napisz funkcję, która co drugi element tablicy 6 elementowej zastąpi połową wartości elementu tablicy go poprzedzającego. Wyświetl tę tablicę. To co udało mi się wymyślić wygląda tak: #include <cstdio> #include <math.h> using namespace std; int main () { int wielkosc_tab=6; int tablica [wielkosc_tab]; for(int i=0;i<wielkosc_tab;i++) { cout<<"Podaj wartosc "<<i+1<<" elementu tablicy: "; cin>>tablica; } for(int i=0;i<wielkosc_tab;i++) { tablica[1]=tablica[0]/2; tablica[3]=tablica[2]/2; tablica[5]=tablica[4]/2; } cout<<"Wartosc elementu pierwszego wynosi: "<<tablica[0]<<endl; cout<<"Wartosc elementu drugiego wynosi: "<<tablica[1]<<endl; cout<<"Wartosc elementu trzeciego wynosi: "<<tablica[2]<<endl; cout<<"Wartosc elementu czwartego wynosi: "<<tablica[3]<<endl; cout<<"Wartosc elementu piatego wynosi: "<<tablica[4]<<endl; cout<<"Wartosc elementu szostego wynosi: "<<tablica[5]<<endl; cin.ignore(); getchar(); return 0; } Problem znajduje się w tym, że nie wiem gdzie jest błąd, który powoduje, że podczas wypisywania rozwiązania wypisuje mi tylko liczby całkowite, np. 9/2=4 a chciałbym żeby wynik był podawany jako liczby rzeczywiste. Z góry dziękuję za odpowiedź! Link to comment Share on other sites More sharing options...
Kaczus Posted December 27, 2016 Report Share Posted December 27, 2016 1) jeśli chcesz mieć liczby niecałkowite, to musisz uzyć takiego typu (przybliżający zmienne rzeczywiste, aczkolwiek nie zawsze dokładnie to typy zmiennoprzecinkowe, w c++ znane jako float double, a czasmi long double) - kilka uwag o typie http://kaczus.ppa.pl/art/liczbyzmiennoprzecinkowe,19.html 2) jeśli chce się uzyskać wynik operacji zmiennoprzecinkowy, to jeden z argumentów musi być takim typem, czyli nie 9/2, a 9/2.0 aczkolwiek lepiej jest doprowadzić do sytuacji, w której wykonamy mnożenie zamiast dzielenia, które ze swojej natury jest szybsze, czyli 9*0.5 w tym wypadku. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.