W naszej szkole, liczącej pięciuset uczniów, są cztery klasy pierwsze. W czwartek zorganizowano dla nich Dzień Sportu i przez cztery godziny lekcyjne odbywały się zajęcia sportowe. Na każdej godzinie trzy klasy ćwiczyły na boisku szkolnym, a jedna miała zajęcia w sali gimnastycznej. Kierownik zajęć zaplanował, że pierwszą godzinę w sali spędzi klasa A, kolejną klasa B, następną C, a czwartą - klasa D. Sprytny Władzio, wysłannik Dyrektora, na każdej godzinie niepostrzeżenie liczył dzieci na boisku. Informację tę przekazywał Dyrektorowi, który chciał wiedzieć, ilu uczniów z poszczególnych klas było obecnych na zajęciach. Wejście W pierwszym wierszu standardowego wejścia zapisano cztery wartości całkowite S1, S2, S3, S4 (1 =< S =< 100) oznaczające liczbę dzieci przebywających na boisku w czasie czterech kolejnych godzin zajęć. Wyjście Na standardowe wyjście wypisz w jednym wierszu w jednym wierszu cztery wartości oddzielone spacją - liczbę uczniów klas ABCD obecnych na zająciach sportowych. Przykłady Wejście: 70 75 80 85 Wyjście 30 25 20 25 -- Wejście: 50 45 55 60 Wyjście 20 25 15 10 -- Wejście: 76 78 75 77 Wyjście 26 24 27 25 Program w c++ na obliczenie czegoś takiego.
" Life is not a problem to be solved but a reality to be experienced! "
© Copyright 2013 - 2024 KUDO.TIPS - All rights reserved.
#include <iostream>
using namespace std;
int main()
{
int s[4];
int x[4];
int w=0; //w oznacza sume liczby uczniow w klasach A-D
cout<<"wpisz liczby uczniow na boisku (1<=s<=100):\n";
for(int i=0;i<4;i++)
{
cout<<i<<".\t";
cin>>s[i];
w+=s[i];
}
if(w%3==0)
{
w=w/3;
for(int i=0;i<4;i++)
{
x[i]=w-s[i];
if(x[i]<0) cout<<"cos nie halo z Twoimi liczbami, gdyz liczba uczniow w klasie\t"<<i<<"\t jest ujemna :(\t"<<x[i]<<endl;
else cout<<"liczba uczniow w klasie\t"<<i<<":\t"<<x[i]<<endl;
}
}
else
cout<<"cos nie halo z Twoimi liczbami, bo liczba uczniow jest niecalkowita :(\t"<<double(w)/3.0<<endl;
return 0;
}
program był kompilowany pod g++ w systemie Ubuntu 11.10 - o dziwo działa
teraz trochę teorii; jak to się liczy
łatwo można zauważyć, że mamy na boisku
w-x[0]=s[0] uczniów w czasie 1-szej godziny
w-x[1]=s[1] w czasie 2-giej
w-x[2]=s[2] w czasie 3-ciej
w-x[3]=s[3] w czasie 4-tej
gdzie w=x[0]+x[1]+x[2]+x[3] suma liczebności wszystkich klas pierwszych
jeśli odamy do siebie cztry powyższe rownania:
4w-x[0]-x[1]-x[2]-x[3]=s[0]+s[1]+s[2]+s[3]
4w-w=s[0]+s[1]+s[2]+s[3]
w=(s[0]+s[1]+s[2]+s[3])/3
mając w jestem w stanie obliczyć x[i] z każdego z powyższych równań (warunek - w jest podzielne przez 3, co następuje zawsze dla x[i] naturlanych)
UWAGA: jeżeli wyniki muszą być koniecznie wypisane w jedym wierszu to instrukcja taka powinna wyglądać następująco:
cout<<x[i]<<' ';
w razie pytań i wątpliwości proszę pisać;
pozdrawiam