[ Krga86 @ 19.10.2015. 19:27 ] @
Napisati program koji za uneti broj n (1 ≤ n ≤ 50) učitava niz od n realnih brojeva. Naći maksimalni element niza, a onda svako njegovo pojavljivanje u
nizu zameniti k puta većim brojem, gde se k unosi sa ulaza.Program učitava niz i ispisuje maksimalan element niza,ali ne zamenjuje maksimalan element sa k puta vecim brojem.

#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
int n=1;ne int k=1;
int r,i,j,max,niz[n];
while(n>0)
{
printf("Koliko brojeva zelite da unesete? n= ");
scanf("%i",&n);
printf("Unesite koeficijent k? k=");
scanf("%i",&k);

for(i=0; i<n; i++){
printf("Unesite realan broj:\t");
cin>>niz;
max=niz[0];

}
for(int p=0;p<n;p++ ){
cout<<niz[p]<<" ";
for (j=1; j<n; j++){
if(niz[j] > max) {
int t=max;
max=niz[j];
// niz[j]=t;
}
}
}
for (int k=0;k<n;k++ ){
}
cout<<"Maksimalni element je:" << max;
//max=max*k;
//cout<<max<<" ";
}
}
[ T.r.o.n.i.c.Srb @ 19.10.2015. 20:29 ] @
Pozdrav
Da li si ti pisao ovaj program bas za ovaj zadatak ili si ga samo prepravljao?
Code:
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
int n=1; int k=1;
int r,i,j,max,niz[n];
while(n>0)
{
printf("Koliko brojeva zelite da unesete? n= ");
scanf("%i",&n);
printf("Unesite koeficijent k? k=");
scanf("%i",&k);

for(i=0; i<n; i++){
printf("Unesite realan broj:\t");
cin>>niz[i];
}
max=niz[0];


for(int p=0;p<n;p++ ){
cout<<niz[p]<<" ";
for (j=1; j<n; j++){
if(niz[j] > max) {
max=niz[j];
}
}
}
cout<<"Maksimalni element je:" << max;
max=max*k;
cout<<max<<" ";
}
return 0;
}

Ovako bi trebalo da radi, nemam trenutno c++ da proverim
[ Krga86 @ 19.10.2015. 20:47 ] @
Hvala T.r.o.n.i.c.Srb ,ali program opet ne radi kako bi trebalo.Testirao sam ga i pokazuje sledeću informaciju npr.

Kada ukucam niz : 1 , 3 , 2, 3 i koeficijent: 5 .Program ispiše : 1 3 2 3 ,maksimalni element niza je : 315

A potreban mi je sledeći ispis: Maksimalni element niza je: 3 , Elementi niza su: 1 15 2 15

Pravim program od samog početka,ovo je radna verzija koja ima dosta mana.






[ T.r.o.n.i.c.Srb @ 19.10.2015. 20:57 ] @
Sta hoces na kraju da ti ispise ? max*k ili max i max*k ili sve elemente gde su max pomnozeni sa k ?, koliko vidim on ti prikazuje trenutno max i max*k jedino je problem u tome sto su ta dva broja spojeni
[ T.r.o.n.i.c.Srb @ 19.10.2015. 21:04 ] @
Code:
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
int n=1; int k=1;
int r,i,j,max,niz[n];
while(n>0)
{
printf("Koliko brojeva zelite da unesete? n= ");
scanf("%i",&n);
printf("Unesite koeficijent k? k=");
scanf("%i",&k);

for(i=0; i<n; i++){
printf("Unesite realan broj:\t");
cin>>niz[i];
}
max=niz[0];


for(int p=0;p<n;p++ ){
cout<<niz[p]<<" ";
for (j=1; j<n; j++){
if(niz[j] > max) {
max=niz[j];
}
}
}
cout<<"Maksimalni element je:" << max/n;
printf("Elementi niza su:" );
for(i=0; i<n; i++){
if(niz[i]==max)
max=max*k;
}
for(i=0; i<n; i++){
cout<<niz[i]<<"/t ";
}
return 0;
}

Probaj ovako
[ Krga86 @ 19.10.2015. 21:18 ] @

Program ispisuje sledeće:

Koliko brojeva zelite da unesete? n= 3
Unesite koeficijent k? k=2
Unesite realan broj: 5
Unesite realan broj: 6
Unesite realan broj: 4
5 6 4 Maksimalni element je:2Elementi niza su:5/t 6/t 4/t
Process returned 0 (0x0) execution time : 6.799 s
Press any key to continue.

Da zanemarimo maksimalni element niza,to je ok. E sad elementi niza su: 5 12 4 (5 6*k 4)

Treba da ispiše sve elemente niza ,s tim što maksimalni element zamenjuje sa k*max

[ T.r.o.n.i.c.Srb @ 19.10.2015. 21:28 ] @
Code:
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
int n=1; int k=1;
int r,i,j,max,niz[n];
while(n>0)
{
printf("Koliko brojeva zelite da unesete? n= ");
scanf("%i",&n);
printf("Unesite koeficijent k? k=");
scanf("%i",&k);

for(i=0; i<n; i++){
printf("Unesite realan broj:\t");
cin>>niz[i];
}
max=niz[0];


for(int p=0;p<n;p++ ){
cout<<niz[p]<<" ";
for (j=1; j<n; j++){
if(niz[j] > max) {
max=niz[j];
}
}
}
cout<<"Maksimalni element je:" << max\n;
printf("Elementi niza su:" );
for(i=0; i<n; i++){
if(niz[i]==max)
{
max=max*k;
niz[i]=max;
}
}
for(i=0; i<n; i++){
cout<<niz[i]<<"\t ";
}
return 0;
}

Probaj ovu verziju, ako ne radi za pola sata cu imati instaliran compiler pa cu onda resiti zadatak
[ Krga86 @ 19.10.2015. 21:36 ] @
Zahvaljujem se puno na pomoći program odlično radi.