Isto sam promjenia prvo redosljed znamenki kod ispisa parnog broja
jer kad rastavlja na znamenke onda ide odzada.
Pa ću pitat jel bio još neki drugi način bez da to radim?
Ovisi da li smijes koristiti pow(x,y)
Isto sam promjenia prvo redosljed znamenki kod ispisa parnog broja
jer kad rastavlja na znamenke onda ide odzada.
Pa ću pitat jel bio još neki drugi način bez da to radim?
Ovisi da li smijes koristiti pow(x,y)
Pozdrav, jel ima koja dobra dusa danas-sutra pomoc samo objasnit jedan zadatak...prog. jezik nije bitan :D
Mrvu kompleksnije, na razini matrica ali djeluje lagano samo ne znam finalizirat uvjete.
Pa da napises zadatak mozda bi ga tko i probao objasniti.
pitanje
ako trebam unjeti broj n i taj n će biti broj elemenata u polju
znam da za polje[konstanta]
zašto ne radi ovo
int t;
cin>>t;
const int k=t;
int polje[k];
Pa da napises zadatak mozda bi ga tko i probao objasniti.
Ma skuzio sam ga djelomicno, ali zadatak je u PDFu pa mogu jedino dat file nekom na PP
pitanje
ako trebam unjeti broj n i taj n će biti broj elemenata u polju
znam da za polje[konstanta]
zašto ne radi ovo
int t;
cin>>t;
const int k=t;
int polje[k];
Ovo sta si napisao radi, stvorio si polje ali to polje trenutno nema vrijednost nikakvu. Trebas jos dodati tipa: cin >> polje[k];
Pa da napises zadatak mozda bi ga tko i probao objasniti.
Ma skuzio sam ga djelomicno, ali zadatak je u PDFu pa mogu jedino dat file nekom na PP
Mozes copy-paste PDF
pitanje
ako trebam unjeti broj n i taj n će biti broj elemenata u polju
znam da za polje[konstanta]
zašto ne radi ovo
int t;
cin>>t;
const int k=t;
int polje[k];
Mozes i napraviti ovo
int *polje=new int [n]
pitanje
ako trebam unjeti broj n i taj n će biti broj elemenata u polju
znam da za polje[konstanta]
zašto ne radi ovo
int t;
cin>>t;
const int k=t;
int polje[k];
Mozes i napraviti ovo
int *polje=new int [n]
ovo su sad pokazivači, koliko sam skužia, jel
na kraju onda trebam stavit delete polje;
ovo sam napravio, znači tu je polje n i ono je prazno, al zašto mi taj k
koji poprimi vrijednost od t kada ga upišem, ne prihvaća kao konstantu
/* Učitaj n, a zatim niz od n realnih brojeva i
ispiši najveći učitani broj i najmanji učitani broj.*/
#include<iostream>
using namespace std;
int main(){
int temp, t;
cin>>t;
const int k=t;
int n[k];
for(int i=0; i<t; i++){
cin>>n[i];
}
for(int i=t-1; i>0;i--){
for(int j=0; j<i;j++)
if(n[j]>n[j+1]){
temp=n[j];
n[j]=n[j+1];
n[j+1]=temp;
}}
cout<<n[0]<<" "<<n[t-1];
return 0;
}
Ovo je tvoj pokušaj prevare compilera, ali ne ide. Konstanta 'k' treba biti incijalizirana konstantom (konkretnim brojem) a ne varijablom 't'.
Već ti je netko gore napisao da se ovakvo što radi pomoću pokazivača:
int *n = new int[t];
// na kraju programa prije return 0
delete[] n;
Isto sam promjenia prvo redosljed znamenki kod ispisa parnog broja
jer kad rastavlja na znamenke onda ide odzada.
Pa ću pitat jel bio još neki drugi način bez da to radim?
Ima način, pomičeš se po dvije znamenke pod pretpostavkom da je broj znamenaka paran, ako je neparan, izvršiš korekciju, odnosno uzmeš lijevu znamenku a desnu odbaciš. Algoritam mora raditi za svaki broj znamenaka, za jednu i dvije znamenke izbaci broj.
#include<iostream>
using namespace std;
int main()
{
int broj, brojZnamenki = 0, temp, sredina, srednjaZnamenka;
cin >> broj;
temp = broj;
srednjaZnamenka = broj;
while (temp > 0)
{
brojZnamenki++;
temp /= 10;
}
sredina = brojZnamenki / 2;
for (int i = 0; i < sredina; i++)
{
srednjaZnamenka = broj % 100;
broj /= 10;
}
if (brojZnamenki % 2 != 0)
{
while (srednjaZnamenka>9)
srednjaZnamenka /= 10;
}
cout << srednjaZnamenka << endl;
return 0;
}
trebao bih naći najmanji zajednički višekratnik, nakon dobrih sat sam riješio,
al ne mogu se oteti dojmu, da ovo nije najbolje rješenje.
#include<iostream>
using namespace std;
int main(){
int t,n, suma=1;
cin>>t>>n;
bool min=true;
for(int s=0; n!=0 && t!=0 ;s++){
min=true;
if(n==1 && t==1){
break;}
for(int i=2; n>0 && t>0 && min==true;i++){
if(n%i==0 || t%i==0){
if(n%i==0 && t%i!=0){
n/=i;
suma*=i;
min=false;
}
else if(t%i==0 && n%i!=0){
t/=i;
suma*=i;
min=false;
}
else{
t/=i;
n/=i;
suma*=i;
min=false;
}}}}
cout<<suma;
return 0;
}
trebao bih naći najmanji zajednički višekratnik, nakon dobrih sat sam riješio,
al ne mogu se oteti dojmu, da ovo nije najbolje rješenje.
#include<iostream>
using namespace std;
int main(){
int t,n, suma=1;
cin>>t>>n;
bool min=true;
for(int s=0; n!=0 && t!=0 ;s++){
min=true;
if(n==1 && t==1){
break;}
for(int i=2; n>0 && t>0 && min==true;i++){
if(n%i==0 || t%i==0){
if(n%i==0 && t%i!=0){
n/=i;
suma*=i;
min=false;
}
else if(t%i==0 && n%i!=0){
t/=i;
suma*=i;
min=false;
}
else{
t/=i;
n/=i;
suma*=i;
min=false;
}}}}
cout<<suma;
return 0;
}
ne, vidiš ako uneseš u tvoj 10 i 25
izbaci 250, a najmanji je 50
trebao bih naći najmanji zajednički višekratnik, nakon dobrih sat sam riješio,
al ne mogu se oteti dojmu, da ovo nije najbolje rješenje.
Najbrži način bi ti bilo prvo naći najveći zajednički djelitelj pomoću euklidova algoritma, i onda kad umnožak brojeva podijelis sa njihovim najvećim zajedničkim djeliteljom dobit ćeš najmanji zajednički višekratnik.
#include <iostream>
using namespace std;
int gcd(int a, int b){
return( b == 0 ? a : gcd(b, a%b));
}
int main(){
int a, b;
cin >> a >> b;
cout << a*b/gcd(a, b) << endl;
return 0;
}
ne, vidiš ako uneseš u tvoj 10 i 25
izbaci 250, a najmanji je 50
Evo kako je kolega gore rekao, mozes ovako:
Racunalo je ipak stroj i nije mu tesko odraditi ovakve stvari brzo, mada kod nije bas neki najoptimiziraniji.
#include <iostream>
using namespace std;
int main()
{
int a, b, c;
cin >> a >> b;
c = a*b;
for (int i = 1; i<c+1; i++)
{
if ((i % a == 0) && (i % b == 0))
{
cout << i;
break;
}
}
system("pause");
return 0;
}
naučit ću valjda jednom bolje razmišljat
Kad se već piše program koji ispituje cijeli interval u kojem može biti najmanji zajednički višekratnik brojeva n i m, onda treba taj interval odrediti kad se već bavimo brute force poslovima.
Ako imamo n i m gdje je m>n, onda je interval u kojem se nalazi njihov najmanji zajednički višekratnik [m, n*m]
Kad taj interval prilagodimo petlji dobijamo
U najduljem slučaju složenost je O(n*m), odnosno u granicama intervala u kojem se nalazi najmanji zajednički višekratnik.
Zato se i rade ove stvari, da naučimo programirati, kad skužimo da je ovdje složenost O(n), tražimo dalje, pa se sjetimo euclidovog algoritma, koji nam je ovdje bitan jer pomoću njega dobijemo naveći zajednički djeljitelj, a on se sastoji od produkta zajedničkihn prim faktora oba broja. Kad skužimo da najmanji zajednički višekratnik od dva broja dobijemo tako da iz produkta svih prim faktora oba broja izbacimo one zajedničke skužimo zašto će nam euclidov algoritam. A euclidov algoritam možemo implementirati i iterativno i rekurzivno.
#include<iostream>
using namespace std;
int main()
{
int n, m, faktor, ostatak=1;
cin >> n >> m;
faktor = m / n;
for (; ostatak!=0; faktor++)
ostatak = faktor * n % m;
cout << (faktor-1)*n << endl;
return 0;
}
čitao sam u knjizi o pokazivačima, bit kužim, al gdje i kako primjenit mi je malo teže, jel ima
netko možda kakvi link na neke zadatke, pa da uz to pokušam bolje shvatit. hvala
čitao sam u knjizi o pokazivačima, bit kužim, al gdje i kako primjenit mi je malo teže, jel ima
netko možda kakvi link na neke zadatke, pa da uz to pokušam bolje shvatit. hvala
I meni su se cinili beskorisni u pocetku, al zapravo su jako korisni sto ces uskoro doznat, evo naprimjer dinamicka alokacija memorije koju sam par postova gore ti napisao radi preko pokazivaca.
int*nesto=new int [varijabla];
Zadatke nemam
čitao sam u knjizi o pokazivačima, bit kužim, al gdje i kako primjenit mi je malo teže, jel ima
netko možda kakvi link na neke zadatke, pa da uz to pokušam bolje shvatit. hvala
I meni su se cinili beskorisni u pocetku, al zapravo su jako korisni sto ces uskoro doznat, evo naprimjer dinamicka alokacija memorije koju sam par postova gore ti napisao radi preko pokazivaca.
int*nesto=new int [varijabla];
Zadatke nemam
ne kažem da su beskorisni već suprotno, to što ja ne baratam njima je druga stvar.
teško je nać ugl zadatke, koji su primjereni mom (ne)znanju. ovaj dio gdje je marker
ono što sam je mislio je da je pod *prt-c vrijednost od a tj.3, a u drugom da je adresa, jel mi može netko malo pojasnit
#include <iostream>
using namespace std;
typedef int *IntPtrType;
int main()
{
IntPtrType ptr_a, ptr_b, *ptr_c;
ptr_a = new int;
*ptr_a = 3;
ptr_b = ptr_a;
cout << *ptr_a << " " << *ptr_b << "\n"; //33
ptr_b = new int;
*ptr_b = 9;
cout << *ptr_a << " " << *ptr_b << "\n"; //39
*ptr_b = *ptr_a;
cout << *ptr_a << " " << *ptr_b << "\n";//33
delete ptr_a;
ptr_a = ptr_b;
cout << *ptr_a << " " << *&*&*&*&*ptr_b << "\n";//33
ptr_c = &ptr_a;
cout << *ptr_c << " " << **ptr_c << "\n";//33
delete ptr_a;
ptr_a = NULL;
return 0;
}
čitao sam u knjizi o pokazivačima, bit kužim, al gdje i kako primjenit mi je malo teže, jel ima
netko možda kakvi link na neke zadatke, pa da uz to pokušam bolje shvatit. hvala
dosta se koriste u vezanim listama, stablima, redovima i to (u biti kao polja samo dinamicke velicine i malo nesigurnije ali "jace")
pogledaj na netu linked list, binary tree, row, i ostale atp (apstraktne tipove podataka ili ti apstract data type)
Pozdrav ekipa, evo mene sa novim problemom.... Nakon nekog vremena druženja sa dev c++ odlučio sam malo probati visual studio 2010 i naišao na sljedeći problem. Znači, pokušavam se služiti onim solution explorerom i organizirati fajlove.
Imam main.cpp
#include <iostream>
#include "osoba.h"
using namespace std;
int main(){
int a,b;
osoba Prva(int a,int b);
cout<<"Koliko je osoba visoka? "<<endl;
cin>>a;
cout<<"Koliko je osoba teska? "<<endl;
cin>>b;
osoba Prva(int a,int b);
Prva.Ispis();
system ("PAUSE");
return 0;
}
osoba.h
#pragma once
class osoba
{
private:
int visina;
int tezina;
public:
osoba(int,int);
void Ispis();
~osoba(void);
};
i osoba.cpp
#include "osoba.h"
#include <iostream>
using namespace std;
osoba::osoba(int V,int T)
{
visina=V;
tezina=T;
}
void osoba::Ispis(){
cout<<"Osoba je visoka: "<<visina<<"i teska: "<<tezina<<endl;
}
osoba::~osoba(void)
{
}
Sad, kad pokušam to pokrenuti u nadi da će mi samo ispisati uneseno, izbaci mi grešku:
c:\users\zoko\documents\visual studio 2010\projects\osobe\osobe\main.cpp(19): error C2228: left of '.Ispis' must have class/struct/union
Što krivo radim? Jer mi je u dev c++ ovo funkcioniralo
osoba Prva(int a, int b) u main
Ne vjerujem da ti je to radilo u Dev C++
Kad radiš instancu klase preko tog konstruktora ide ovako
osoba Prva(a, b)
K tome, ta prva instanca je napravljena prije inicijalizacije argumenata konstruktora, i imaš dvije instance istog imena.
Ljudi, moze jedno pitanje. Programiram vec cca 5 godina (c++) i u zivotu se namjeravam batiti programiranjem, pa me zanima koliko je lakse programirati na engleskoj tipkovnici. Ja sam cijelo vrijeme programirao na hrv tipkovnici i znam ju skorz napamet (ukljucijuci i specialne znakove) i tipkam bez gledanja. U zadnje vrijeme sam poceo eksperimentirati sa engleskom tipkovnicom, no nekako ne vidim preveliki dobitak, pa me zanima ima li smisla forsirati englesku tipkovnicu. Ako se neko prebacivao s tipkovnica kao ja sad, dobro bi dosao neki savjet.
Ljudi, moze jedno pitanje. Programiram vec cca 5 godina (c++) i u zivotu se namjeravam batiti programiranjem, pa me zanima koliko je lakse programirati na engleskoj tipkovnici. Ja sam cijelo vrijeme programirao na hrv tipkovnici i znam ju skorz napamet (ukljucijuci i specialne znakove) i tipkam bez gledanja. U zadnje vrijeme sam poceo eksperimentirati sa engleskom tipkovnicom, no nekako ne vidim preveliki dobitak, pa me zanima ima li smisla forsirati englesku tipkovnicu. Ako se neko prebacivao s tipkovnica kao ja sad, dobro bi dosao neki savjet.
Sve je individualno, meni je US keyboard brža, do zagrada svih oblika brže dođem, semicolon i colon ista stvar, znak jednako takodjer. Ipak je US keyboard original i kao takav produktivniji, a hr tipkovnica je ipak kompromis, dok su ugurali naša slova ode produktivnost. Ali, sve je individualno, ne radi ništa iz fore, nego drži konja koji dobija trku.
Moje osobno mišljenje jest da su tipke koje baš trebaju za pisanje koda kod hr tipkovnice dobile nezgodniji raspored da bi se ugurala naša slova.
A pošto sam i ja počeo sa hr tipkovnicom i radim na hr tipkovnici, i danas me malo zafrkavava poneki specijalni znak na US keyboardu, ali benefit mi je veći, najčešći znakovi koji trebaju su prirodnije postavljeni.
Ljudi, moze jedno pitanje. Programiram vec cca 5 godina (c++) i u zivotu se namjeravam batiti programiranjem, pa me zanima koliko je lakse programirati na engleskoj tipkovnici. Ja sam cijelo vrijeme programirao na hrv tipkovnici i znam ju skorz napamet (ukljucijuci i specialne znakove) i tipkam bez gledanja. U zadnje vrijeme sam poceo eksperimentirati sa engleskom tipkovnicom, no nekako ne vidim preveliki dobitak, pa me zanima ima li smisla forsirati englesku tipkovnicu. Ako se neko prebacivao s tipkovnica kao ja sad, dobro bi dosao neki savjet.
Sve je individualno, meni je US keyboard brža, do zagrada svih oblika brže dođem, semicolon i colon ista stvar, znak jednako takodjer. Ipak je US keyboard original i kao takav produktivniji, a hr tipkovnica je ipak kompromis, dok su ugurali naša slova ode produktivnost. Ali, sve je individualno, ne radi ništa iz fore, nego drži konja koji dobija trku.
Moje osobno mišljenje jest da su tipke koje baš trebaju za pisanje koda kod hr tipkovnice dobile nezgodniji raspored da bi se ugurala naša slova.
A pošto sam i ja počeo sa hr tipkovnicom i radim na hr tipkovnici, i danas me malo zafrkavava poneki specijalni znak, ali benefit mi je veći, najčešći znakovi koji trebaju su prirodnije postavljeni.
a kako se snalazis kad trebas pisati neki rad/seminar ili sto vec kada trebas korisiti nase dijakriticke znakove? dali ti je problem prebacivati se iz jedne tipkovnice u drugu? kolko vidim sad koristis hrvatsku tipkovnicu.
EDIT: sad sam procito tvoj edit ;)
Ljudi, moze jedno pitanje. Programiram vec cca 5 godina (c++) i u zivotu se namjeravam batiti programiranjem, pa me zanima koliko je lakse programirati na engleskoj tipkovnici. Ja sam cijelo vrijeme programirao na hrv tipkovnici i znam ju skorz napamet (ukljucijuci i specialne znakove) i tipkam bez gledanja. U zadnje vrijeme sam poceo eksperimentirati sa engleskom tipkovnicom, no nekako ne vidim preveliki dobitak, pa me zanima ima li smisla forsirati englesku tipkovnicu. Ako se neko prebacivao s tipkovnica kao ja sad, dobro bi dosao neki savjet.
Sve je individualno, meni je US keyboard brža, do zagrada svih oblika brže dođem, semicolon i colon ista stvar, znak jednako takodjer. Ipak je US keyboard original i kao takav produktivniji, a hr tipkovnica je ipak kompromis, dok su ugurali naša slova ode produktivnost. Ali, sve je individualno, ne radi ništa iz fore, nego drži konja koji dobija trku.
Moje osobno mišljenje jest da su tipke koje baš trebaju za pisanje koda kod hr tipkovnice dobile nezgodniji raspored da bi se ugurala naša slova.
A pošto sam i ja počeo sa hr tipkovnicom i radim na hr tipkovnici, i danas me malo zafrkavava poneki specijalni znak, ali benefit mi je veći, najčešći znakovi koji trebaju su prirodnije postavljeni.
a kako se snalazis kad trebas pisati neki rad/seminar ili sto vec kada trebas korisiti nase dijakriticke znakove? dali ti je problem prebacivati se iz jedne tipkovnice u drugu? kolko vidim sad koristis hrvatsku tipkovnicu.
Da, inače koristim hr tipkovnicu za pisanje, čim uđem u VS stisnem tipke windows plus space i nemam problema, ipak mi je benefit veći.