Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int usun ( Ttowary *&glowa ){
- Ttowary *pom, *temp, *adres;
- pom = glowa;
- int dlugosc=0;
- double srednia=0, suma=0;
- if (glowa == NULL) return -100;
- if (glowa->next == NULL) return -200;
- dlugosc = 1;
- suma = pom->cena;
- while ( pom->next != NULL ) {
- dlugosc++;
- pom = pom -> next;
- suma = suma + pom->cena;
- }
- srednia = suma/dlugosc;
- cout << endl << "Srednia to " << srednia <<endl;
- double najwieksza, roznica;
- pom = glowa;
- if (pom->cena >= srednia) najwieksza = pom->cena - srednia;
- else najwieksza = 0;
- cout << endl << endl << "Towary o cenie wyzszej niz srednia: " << endl;
- if ( pom->cena >= srednia ) {
- cout << pom->towar << ": " << pom->cena << endl;
- roznica = pom->cena - srednia;
- }
- while ( pom->next != NULL ){
- pom = pom -> next;
- if ( pom->cena >= srednia ) {
- cout << pom->towar << ": " << pom->cena << endl;
- roznica = pom->cena - srednia;
- }
- else {
- roznica = srednia - pom->cena;
- }
- if (najwieksza < roznica) najwieksza = roznica;
- }
- cout << endl << " teraz najwieksza roznica to " << najwieksza << endl << endl;
- pom = glowa;
- /*if (((glowa->cena - srednia) == najwieksza) || ((srednia - glowa->cena) == najwieksza)) {
- temp = glowa;
- glowa = glowa -> next;
- delete temp;
- }*/
- if ( glowa -> cena > srednia ) roznica = glowa -> cena - srednia;
- else roznica = srednia - glowa -> cena;
- if (roznica == najwieksza) glowa = glowa -> next;
- //szukamy tego o najwiekszej roznicy
- while (glowa -> next != NULL) {
- glowa = glowa->next;
- cout << endl << "teraz jestem na " << glowa -> cena << endl;
- if ( glowa->cena>srednia ) roznica = glowa -> cena - srednia;
- else roznica = srednia - glowa -> cena;
- // cout << " roznica to " << roznica << " a najwieksza to " << najwieksza;
- if (roznica == najwieksza) {
- cout << " to usunac " << glowa-> cena << endl;
- temp = glowa;
- cout << "temp cena " << temp->cena << endl;
- cout << "glowa next cena " << glowa->next->cena << endl;
- cout << "glowa next next cena " << glowa->next->next->cena << endl;
- glowa = glowa -> next;
- delete temp;
- cout << endl << "glowa teraz to " << glowa -> cena << endl;
- cout << "glowa next cena " << glowa->next->cena << endl;
- cout << "glowa next next cena " << glowa->next->next->cena << endl;
- break;
- /*cout << "1";
- glowa = glowa -> next;
- cout << "2";
- delete temp;
- cout << "3";*/
- }
- cout << "4";
- // if (((pom->cena - srednia) = najwieksza) || ((srednia - pom->cena) = najwieksza)) cout << " ten jest najwieksza roznica! " << pom->cena;
- }
- glowa = pom;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment