Ако некој може да постира изворна програма во C++ .Се бара да се одреди НЗС и НЗД на два влезни броја , па ако некој има време или можеби му се наоѓа во PC нека постира. Однапред Благодарам за помошта :smir:
int nzd(int a, int b)
{
return (b!=0? nzd(b,a%b):a);
}
int nzs(int a, int b)
{
return (a*b)/nzd(a,b);
}
еве од мене (сега ја направив )Ако некој може да постира изворна програма во C++ .Се бара да се одреди НЗС и НЗД на два влезни броја , па ако некој има време или можеби му се наоѓа во PC нека постира. Однапред Благодарам за помошта :smir:
#include<iostream>
// Odreduvanje na NZS i NZD na dva broja vneseni preku tastatura
using namespace std;
int x,y,NZD,NZS;
int main(){
cout<<"Vnesi dva prirodni broja: "<<endl;
cout<<"X= ";
cin>>x;
cout<<"Y= ";
cin>>y;
//----------------------------------------------------
if (x<y) { NZD=x; }
else { NZD=y; }
while (((x % NZD) !=0) || ((y % NZD) != 0))
{
NZD=NZD-1;
}
cout<<"NZD na "<<x<<" i "<<y<<" e "<<NZD<<endl;
//----------------------------------------------------
if (x>y) { NZS=x; }
else { NZS=y; }
while (((NZS % x) !=0) || ((NZS % y) != 0))
{
NZS=NZS+NZS;
}
cout<<"NZS na "<<x<<" i "<<y<<" e "<<NZS<<endl;
//----------------------------------------------------
system("pause");
return 0;
}
brat nemam pojma kako da pocnam za toa pisav oti sega prvpat se srecavam so strukturi@goran12
Почни, па ако заглавиш некаде ќе ти биде пружена помош.
Епа брат почни да одиш на предавањаbrat nemam pojma kako da pocnam za toa pisav oti sega prvpat se srecavam so strukturi
#include <iostream>
#include <cstring>
#include <cctype>
using namespace std;
class Fudbaler
{
private:
char ime[30];
char tim[30];
int broj, gol[12];
public:
Fudbaler(){};
[COLOR="red"][B]Fudbaler(char *name, char *team, int num, int *goal)
{
setN(name);
setT(team);
setB(num);
setG(goal);
};[/B][/COLOR]
~Fudbaler(){};
int vkupno();
[COLOR="red"][B]void pecati();
void setN(char const *name) {strcpy(ime,name);};
void setT(char const *team) {strcpy(tim,team);};
void setB(int num) {broj=num;};
void setG(int *);
};
[/B][/COLOR]
void Fudbaler::setG(int *goal)
{
for(int j=0;j<12;j++)
gol[j]=goal[j];
}
int Fudbaler::vkupno()
{
int vk=0;
for(int j=0;j<12;j++)
vk+=gol[j];
return vk;
}
void Fudbaler::pecati()
{
cout << "Fudbalerot " << ime << " od timot "<< tim << " , so broj na dres " <<
broj << " , ovaa sezona ima postignato " << vkupno() << " golovi." << endl;
}
int main()
{
char ime[30],tim[30];
int broj,gol[12],j,rbr;
cout << "Vnesuvanje na podatoci za igracite (ime -> tim -> broj na dres) " << endl;
for(;;rbr++)
{
cout<<"Vnesi ime: "; cin>> ime;
cout<<"Vnesi tim: " ;cin >> tim;
cout<<"Vnesi broj na dres: "; cin >> broj;
for(j=0;j<12;j++)
{
cout << "Mesec" "("<< j+1 << ")"<< " : ";
cin >> gol[j];
}
Fudbaler igrac(ime,tim,broj,gol);
igrac.pecati();
}
system("PAUSE");
return 0;
}
Тоа би било тоа...Задачата:
Да се напише програма во C++ во која ќе се развие класа Fudbaler, која ќе содржи име на фудбалерот (низа од 20 знаци), име на тимот за кој игра (низа од 30 знаци), број на дрес и низа од целобројни променливи кои претставуваат број на голови кои ги постигнал фудбалерот во последната година (т.е. во последните 12 месеци посебно). Во класата да се дефинираат соодветните конструктор и деструктор, функција за пресметување на вкупниот број на голови кои ги постигнал фудбалерот во последната година, како и печатење на инфрмациите за фудбалерот во следниов формат:
Фудбалерот ИмеНаФудбалерот, со број на дрес БрНаДрес, оваа сезона има постигнато БрНаГолови голови.
Решението:
Проблемот е што од оправдани причини не појдов на последните 2 предавања/вежби и не можам сега да укапирам како рабори ова Set, што е горе болдирано и функцијата void pecati. Ако може некој да ми објасни во 2-3 реда што прават црвните команди горе би бил благодарен:back:Код:#include <iostream> #include <cstring> #include <cctype> using namespace std; class Fudbaler { private: char ime[30]; char tim[30]; int broj, gol[12]; public: Fudbaler(){}; [COLOR="red"][B]Fudbaler(char *name, char *team, int num, int *goal) { setN(name); setT(team); setB(num); setG(goal); };[/B][/COLOR][COLOR="blue"] - Конструктор. Т.е. основната работа кога креираш објект од класа. Преку него се дава "душата" на објектот, т.е. сите податоци неопходни за тој објект.[/COLOR] ~Fudbaler(){}; int vkupno(); [COLOR="red"][B]void pecati(); void setN(char const *name) {strcpy(ime,name);}; void setT(char const *team) {strcpy(tim,team);}; void setB(int num) {broj=num;}; void setG(int *); }; [/B][/COLOR][COLOR="blue"] - Сетери. Бидејќи податоците од класата ти се сите private, мора да имаш ваква ствар за да можеш да ги промениш. Без нив [B]нема[/B] да можеш да направиш ваква ствар: kaka.tim = "Real Madrid"; (kaka е објект од класата фудбалер). Туку ќе мора да напишеш: kaka.setT("Real Madrid");[/COLOR] void Fudbaler::setG(int *goal) { for(int j=0;j<12;j++) gol[j]=goal[j]; } int Fudbaler::vkupno() { int vk=0; for(int j=0;j<12;j++) vk+=gol[j]; return vk; } [COLOR="red"]void Fudbaler::pecati() { cout << "Fudbalerot " << ime << " od timot "<< tim << " , so broj na dres " << broj << " , ovaa sezona ima postignato " << vkupno() << " golovi." << endl; }[/COLOR][COLOR="blue"] - Функција која ги печати сите податоци од објектот на таа класа. Ако во main-от напишеш: kaka.pecati() во командна линија ќе ти ги испише сите податоци на начин како што ти си го замислил (напишал).[/COLOR] int main() { char ime[30],tim[30]; int broj,gol[12],j,rbr; cout << "Vnesuvanje na podatoci za igracite (ime -> tim -> broj na dres) " << endl; for(;;rbr++) { cout<<"Vnesi ime: "; cin>> ime; cout<<"Vnesi tim: " ;cin >> tim; cout<<"Vnesi broj na dres: "; cin >> broj; for(j=0;j<12;j++) { cout << "Mesec" "("<< j+1 << ")"<< " : "; cin >> gol[j]; } Fudbaler igrac(ime,tim,broj,gol); igrac.pecati(); } system("PAUSE"); return 0; }
mislam deka ovaa ima mala greska#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
int main()
{
int s,p,c,a,b,l=0;
char n[10],k,x;
const char *pok;
fstream dat1,dat2;
cout << "Vnesi go imeto na datotekata: ";
cin >> n;
dat1.open(n, ios::in);
dat2.open("Krajno reshenie.txt", ios:ut);
if (!dat1)
{
cout << "Nemozam da najdam datoteka so takvo ime!!!";
return 0;
}
s = 0;
while (!dat1.eof())
{
dat1 >> x;
pok = &x;
if (isdigit(x) && s == 1)
{
b = atoi(pok);
s = 0;
p = 1;
}
else
if (isdigit(x))
{
a = atoi(pok);
s +=1;
}
if (p == 1)
{
cout << "------------------------------------------" << endl;
if (l == 0)
cout << "Prvite dva broja od datotekata se: " << a << " i " << b << endl;
else
cout << "Slednite dva broja od datotekata se: " << a << " i " << b << endl;
cout << "Vnesi eden od osnovnite aritmetichki operacii : + , - , / , * " << endl;
cin >> k;
if ( k == '+' )
{
c = a+b;
dat2 << a << " + " << b << " = " << c << endl;
}
else
if (k == '-')
{
c = a-b;
dat2 << a << " - " << b << " = " << c << endl;
}
else
if (k == '*')
{
c = a*b;
dat2 << a << " * " << b << " = " << c << endl;
}
else
if (k == '/')
{
c = a/b;
dat2 << a << " / " << b << " = " << c << endl;
}
p = 0;
l += 1;
}
}
dat1.close();
dat2.close();
}
brat ne tie tocna nemoze da se dobie negativen broj :pos2:Епа еве вака нешто (другпат не отварај нови теми, си има посебна тема за C/C++)
Код:#include <iostream> #include <cstdlib> using namespace std; int main() { int a[70],i,n=64,suma=0; for(i=1;i<=64;i++) { if(a[i]==1) suma=1; else if(a[i]==2) suma=2*a[i]; else suma=suma+2*(a[i]+a[i-1]); } cout << "Vkupno potrebni zrna: " << suma << endl; system("pause"); return 0; }