Programiranje - C++ zadaci (dvodimenzionalno polje)

#include <string>

1. Stvorite polje od n naziva klubova. Pronađite u polju najdulji naziv kluba i kopirajte ga u string NAJKLUB. Pretvorite slova druge riječi stringa NAJKLUB u velika slova. Stvorite jednodimenzionalno polje koje će sadržavati brojeve riječi svih naziva klubova. Ispišite polje naziva klubova, promijenjeni string NAJKLUB i jednodimenzionalno polje broja riječi svih naziva klubova.

#include "stdafx.h"
#include <iostream>
#include <string>
#define N 10
#define max 50

using namespace std;

void main()
{
	char klub[N][max],NAJKLUB[max];
	int n,rijeci[N],razmak,index,duzina=0;

	cout<<"Koliko klubova?(1-10): ";
	cin>>n;
	cin.ignore();
	cout<<endl;

	for (int i=0;i<n;i++)
    {
		cout<<"Naziv "<<i+1<<". kluba: ";
		cin.getline(klub[i],max);

		if (strlen(klub[i])>duzina)
        {
			duzina=strlen(klub[i]);
			strcpy(NAJKLUB, klub[i]);}
        }

	for(int i=0;NAJKLUB[i]!='\0';i++)
		if (NAJKLUB[i]==' '){index=i;break;}

	for(int i=index+1;NAJKLUB[i]!=' ';i++)
		NAJKLUB[i]=toupper(NAJKLUB[i]);
    
	for (int i=0;i<n;i++)
    {
		razmak=0;
		for(int j=0;klub[i][j]!='\0';j++)
			if (klub[i][j]==' ')razmak++;
		rijeci[i]=razmak+1;
    }

	cout<<endl<<"Uneseni klubovi su sljedeci:"<<endl;
	for (int i=0;i<n;i++)
		cout<<i+1<<". klub: "<<klub[i]<<endl;

	cout<<endl<<endl;
	for(int i=0;i<n;i++)
		cout<<"Naziv "<<i+1<<". kluba ima "<<rijeci[i]<<" rijeci "<<endl;

	cout<<endl<<"Klub s najduljim nazivom: "<<NAJKLUB<<endl;
}

Preuzmite projekt: zad_1.cpp.

2. Stvorite polje od n naziva ustanova. Pronađite u polju najdulji naziv ustanove i kopirajte ga u string USTANOVA. Pretvorite slova zadnje riječi stringa USTANOVA u velika slova. Stvorite jednodimenzionalno polje koje će sadržavati brojeve riječi svih naziva ustanova. Ispišite polje naziva ustanova, promijenjeni string USTANOVA i jednodimenzionalno polje broja riječi svih naziva ustanova.

#include "stdafx.h"
#include <iostream>
#include <string>
#define n 10
#define max 50

using namespace std;

void main()
{
	char ustanova[n][max],USTANOVA[max]={0};
	int x,index,razmak,rijeci[n];
	
	cout<<"Koliko ustanova?(1-10): ";
	cin>>x;
	cin.ignore();
	cout<<endl;

	for (int i=0;i<x;i++)
    {
		cout<<"Naziv "<<i+1<". ustanove: ";
		cin.getline(ustanova[i],max);

		if (strlen(USTANOVA)<strlen(ustanova[i]))
			strcpy(USTANOVA, ustanova[i]);
	}
	for(int i=0;USTANOVA[i]!='\0';i++)
		if(USTANOVA[i]==' ')index=i;
	for(int i=index+1;USTANOVA[i]!='\0';i++)
		USTANOVA[i]=toupper(USTANOVA[i]);
		
	for(int i=0;i<x;i++)
    {
		razmak=0;
		for(int j=0;ustanova[i][j]!='\0';j++)
			if (ustanova[i][j]==' ')razmak++;
		rijeci[i]=razmak+1;
	}
	cout<<endl;
	for(int i=0;i<x;i++)
		cout<<i+1<<". ustanova: "<<ustanova[i]<<" (sadrzi "<<rijeci[i]<<" rijeci)"<<endl;
	cout<<endl<<"Ustanova s najveci nazivom: "<<USTANOVA<<endl;
}

Preuzmite projekt: zad_2.cpp.

3. Stvorite polje od n naziva fakulteta. Učitaj naziv fakulteta za koji želite provjeriti da li se nalazi u učitanom polju i ako se nalazi ispišite poruku “Naziv je prijavljen” a ako nije ispišite poruku “Naziva nema”. Pronađite u polju najdulji naziv fakulteta i kopirajte ga u string FAKULTET. Prebrojite koliko riječi ima naziv tog fakulteta i svako prvo slovo u riječi pretvorite u veliko slovo. Stvorite jednodimenzionalno polje koje će sadržavati brojeve znakova svakog naziva fakulteta. Ispišite polje naziva fakulteta, promijenjeni string FAKULTET i jednodimenzionalno polje broja znakova svakog naziva fakulteta.

#include "stdafx.h"
#include <iostream>
#include <string>
#define n 10
#define max 50

using namespace std;

void main()
{
	char fakultet[n][max],FAKULTET[max]={0},provijera[max];
	int x,c=0,rijeci=1,slova[n];
	
	cout<<"Koliko fakulteta?(1-10): ";
	cin>>x;
	cin.ignore();
	cout<<endl;

	for (int i=0;i<x;i++)
    {
		cout<<"Naziv "<<i+1<<". fakulteta: ";
		cin.getline(fakultet[i],max);
		slova[i]=strlen(fakultet[i]);
		if (strlen(FAKULTET)<strlen(fakultet[i]))
			strcpy(FAKULTET,fakultet[i]);
	}

	cout<<endl<<"Upisite naziv fakultet za koji zelite provijerit dal je prijavljen: "<<endl;
	cin.getline(provijera,max);
	for(int i=0;i<x;i++)
		if(strcmp(provijera,fakultet[i])==0)c=1;
	if(c==0)cout<<"Naziva nema."<<endl<<endl;
	else if(c==1)cout<<"Naziv je prijavljen."<<endl<<endl;

	FAKULTET[0]=toupper(FAKULTET[0]);
    for(int i=0;FAKULTET[i]!='\0';i++)
		if(FAKULTET[i]==' ')
		{
			FAKULTET[i+1]=toupper(FAKULTET[i+1]);
			rijeci++;
		}

	for(int i=0;i<x;i++)
		cout<<i+1<<". fakultet: "<<fakultet[i]<<" (sadrzi "<<slova[i]<<" znakova)"<<endl;
	cout<<endl<<"Fakultet s najveci nazivom: "<<FAKULTET<<endl;
}

Preuzmite projekt: zad_3.cpp.

4. Stvorite polje od n naziva biblioteka Učitaj naziv biblioteke za koji želite provjeriti da li se nalazi u učitanom polju i ako se nalazi ispišite poruku “Naziv postoji” a ako nije ispišite poruku “Naziva nema”. Pronađite u polju najkraći naziv biblioteke i kopirajte ga u string BIBLIO. Prebrojite koliko riječi ima naziv te biblioteke i svako prvo slovo u riječi pretvorite u veliko slovo. Stvorite jednodimenzionalno polje koje će sadržavati brojeve znakova svakog naziva biblioteke. Ispišite polje naziva biblioteka, promijenjeni string BIBLIO i jednodimenzionalno polje broja znakova svakog naziva biblioteke.

#include "stdafx.h"
#include <iostream>
#include <string>
#define n 10
#define max 50

using namespace std;

void main()
{
	char biblioteka[n][max],provijera[max],biblio[max];
	int x,c=0,rijeci=1,slova[n];
	
	cout<<"Koliko biblioteka?(1-10): ";
	cin>>x;
	cin.ignore();
	cout<<endl;

	for (int i=0;i<x;i++)
    {
		cout<<"Naziv "<<i+1<<". biblioteke: ";
		cin.getline(biblioteka[i],max);
		slova[i]=strlen(biblioteka[i]);
	}
	
	strcpy(biblio,biblioteka[0]);
	for(int i=1;i<x;i++)
		if(strlen(biblio)>strlen(biblioteka[i]))
			strcpy(biblio,biblioteka[i]);
	
	biblio[0]=toupper(biblio[0]);
	for(int i=0;biblio[i]!='\0';i++)
		if(biblio[i]==' ')
		{
			biblio[i+1]=toupper(biblio[i+1]);
			rijeci++;
		}
	
	cout<<endl<<"Upisite naziv biblioteke za koji zelite provijerit dal je prijavljena: "<<endl;
	cin.getline(provijera,max);
	for(int i=0;i<x;i++)
		if(strcmp(provijera,biblioteka[i])==0)c=1;
	if(c==0)cout<<"Naziva nema."<<endl<<endl;
	else if(c==1)cout<<"Naziv postoji."<<endl<<endl;

	for(int i=0;i<x;i++)
		cout<<i+1<<". biblioteka: "<<biblioteka[i]<<" (sadrzi "<<slova[i]<<" znakova)"<<endl;
	cout<<endl<<"Biblioteka s najmanjim nazivom: "<<biblio<<" (sadrzi "<<rijeci<<" rijeci)"<<endl;	
}

Preuzmite projekt: zad_4.cpp.

<<Home