Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 18

#include<stdio.

h>
//0 1 2 3 4
//12 3 44 5 19
int main(){
int a[100];
int i,n;
printf("Vnesi broj na elementi vo nizata:");
scanf("%d",&n);
printf("Vnesi gi elementite vo nizata:");
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n;i++){
printf("%d ",a[i]);
}
}

#include<stdio.h>
//0 1 2 3 4
//12 3 44 5 19
//obratno pecatenje na elementi od niza
int main(){
int a[100];
int i,n;
printf("Vnesi broj na elementi vo nizata:");
scanf("%d",&n);
printf("Vnesi gi elementite vo nizata:");
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=n-1;i>=0;i--){
printf("%d ",a[i]);
}
}

#include<stdio.h>
//0 1 2 3 4
//12 3 44 5 19
// pecatenje na parnite elementi od niza
int main(){
int a[100];
int i,n;
printf("Vnesi broj na elementi vo nizata:");
scanf("%d",&n);
printf("Vnesi gi elementite vo nizata:");
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n;i++){
if(a[i]%2==0){ // if(a[i]%2!=0){
printf("%d",&a[i]);
}
}
}

#include<stdio.h>
// i j
//0 1 2 3 4
//12 3 44 5 19
//3 12 44 5 19
//3 5 44 12 19
//3 5 12 44 19
//3 5 12 19 44
// sortitenje na elemetni od niza
int main(){
int a[100];
int j,i,n,temp;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n;i++){
for(j=i+1;j<n;j++){
if(a[i]>a[j]){
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
for(i=0;i<n;i++){
printf("%d ",a[i]);
}
}

Од стандарден влез се чита природен број N (N <= 100), како и низа a[ ] од N цели
броеви.
Да се напише функција void premesti(а, n) која го преместува секој пронајден
негативен број на крајот на низата. По преместувањето редоследот на позитивните
броеви треба да остане ист како и во оригиналната низа, а истото важи и за
редоследот на негативните.
Нaпишете програма која ќе ја повика функцијата premesti за внесената низа a[ ] и
потоа ќе ја испечати новодобиената низа.
Пример.
Влез
Input
9
1 3 -3 2 5 -7 -9 0 3
Result
1 3 2 5 0 3 -3 -7 -9
Input
10
8 1 5 7 10 100 36 85 14 2
Result
8 1 5 7 10 100 36 85 14 2
}
for(i=0;i<n;i++){
if(a[i]>=0){
printf("%d ",a[i]);
}
}
for(i=0;i<n;i++){
if(a[i]<0){
printf("%d ",a[i]);
}
}
}

Од стандарден влез се чита природен број N (N <= 100), како и низа a[ ] од N цели
броеви.
Да се напише функција void premesti(а, n) која го преместува секој пронајден
негативен број на крајот на низата. По преместувањето редоследот на позитивните
броеви треба да остане ист како и во оригиналната низа, а истото важи и за
редоследот на негативните.
Нaпишете програма која ќе ја повика функцијата premesti за внесената низа a[ ] и
потоа ќе ја испечати новодобиената низа.
Пример.
Влез
Input
9
1 3 -3 2 5 -7 -9 0 3
Result
1 3 2 5 0 3 -3 -7 -9
Input
10
8 1 5 7 10 100 36 85 14 2
Result
8 1 5 7 10 100 36 85 14 2
#include<stdio.h>

int main(){
int a[100];
int i,n;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n;i++){
if(a[i]>=0){
printf("%d ",a[i]);
}
}
for(i=0;i<n;i++){
if(a[i]<0){
printf("%d ",a[i]);
}
}
}
#include<stdio.h>
/*
da se najde najmaliot i najgolemiot element od niza i da im se promenat mestata
input:

5
12 8 9 1 2
output:

max:12
min:1
1 8 9 12 2
*/
int main(){
int a[100],min=9999,max=-9999,pozmin=0,pozmax=0,temp;
int i,n;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n;i++){
if(a[i]<min){
min=a[i];
pozmin=i;
}
}
for(i=0;i<n;i++){
if(a[i]>max){
max=a[i];
pozmax=i;
}
}
printf("max: %d\n",max);
printf("min: %d\n",min);
temp=a[pozmin];
a[pozmin]=a[pozmax];
a[pozmax]=temp;
for(i=0;i<n;i++){
printf("%d ",a[i]);
}
}

#include<stdio.h>
/*
da se najde najmaliot i najgolemiot element od niza i da im se promenat mestata
zadacata da se resi so pomos na funkcii
input:

5
12 8 9 1 2
output:

max:12
min:1
1 8 9 12 2
*/
void funkcija(int a[100],int n){
int i,min=9999,max=-9999,pozmin=0,pozmax=0,temp;
for(i=0;i<n;i++){
if(a[i]<min){
min=a[i];
pozmin=i;
}
}
for(i=0;i<n;i++){
if(a[i]>max){
max=a[i];
pozmax=i;
}
}
printf("max: %d\n",max);
printf("min: %d\n",min);
temp=a[pozmin];
a[pozmin]=a[pozmax];
a[pozmax]=temp;

}
int main(){
int a[100];
int i,n;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
funkcija(a,n);
for(i=0;i<n;i++){
printf("%d ",a[i]);
}
}

#include<stdio.h>
/*
da se najde najmaliot i najgolemiot element od niza
zadacata da se resi so pomos na funkcii
input:

5
12 8 9 1 2
output:

max:12
min:1
*/
int najmal(int a[100],int n){
int i,min=9999,max=-9999,pozmin=0,pozmax=0,temp;
for(i=0;i<n;i++){
if(a[i]<min){
min=a[i];
}
}
return min;
}
int najgolem(int a[100],int n){
int i,min=9999,max=-9999,pozmin=0,pozmax=0,temp;
for(i=0;i<n;i++){
if(a[i]>max){
max=a[i];
}
}
return max;
}

int main(){
int a[100];
int i,n;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
printf("max: %d\n", najgolem(a,n));
printf("max: %d\n", najmal(a,n));
}

#include<stdio.h>
/*
Korisnikot vnesuva niza so maximum 80 elementi da se ispecatat site broevi koj sto
se
palindromi vo nizata.
input:

5
121 8 91 11 13
output:
121 8 11
*/

int palindrom(int broj){


int prevrten=0,cifra;
while(broj>0){
cifra=broj%10;
prevrten=prevrten*10+cifra;
broj=broj/10;
}
return prevrten;
}

int main(){
int a[80];
int i,n;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n;i++){
if(a[i]==palindrom(a[i])){
printf("%d ",a[i]);
}
}
}
Од тастатура се внесува цел број M, а потоа M низи од цели броеви. За секоја низа
прво се внесува бројот на елементи во низата N (N<=100), а потоа и елементите на
низата.

Секоја од внесените низи треба да се трансформира според следново правило:

Ако првиот елемент од низата е позитивен број, тоа значи сите елементи од низата
(вклучувајќи го и првиот) да се поместат за онолку места во десно, колку што е
вредноста на елементот, празнините што ќе настанат во низата да се пополнат со
елементи со вредност нула.

При поместување на елементите, бројот на елементите во низата останува непроменет.

На крајот да се испечатат трансформираните низи како и тоа колку од влезните низи


останале празни, односно по трансформацијата имаат само елементи со вредност нула.

Трансформацијата на низите да се реализира во посебна функција. Решенијата без


користење функција ќе бидат оценети со најмногу 40% од поените.

Објаснување на вториот и третиот пример:


Во вториот пример се вчитува само една низа со 5 елементи (1,2,3,4,5). Првиот
елемент е 1 (позитивен број), па елементите се поместуваат за една позиција на
десно (_,1,2,3,4). Потоа празнините се пополнуваат со 0 и низата ги има елементите
0,1,2,3,4.

Во третиот пример се вчитува исто само една низа со 5 елементи (-2,-3,-4,-5,-6).


Првиот елемент е -2 (негативен број), па елементите се поместуваат за две позиции
на лево (-4,-5,-6,_,__). Потоа празнините се пополнуваат со 0 и низата ги има
елементите -4,-5,-6,0,0.

Од стандарден влез се чита природен број N (N <= 100), како и низа од позитивни
цели броеви a[ ] со N елементи.

Да се напише функција int par(a, n) која ќе го врати најмалиот елемент во низата


кој се појавува парен број пати во низата. Доколку нема таков елемент, функцијата
враќа вредност 0.

Напишете програма што ќе ја повика функцијата par за внесената низа a[ ] и ќе го


испечати најмалиот број којшто се појавува парен број пати во низата a[ ].

Пример 1.

Влез

12 // бројот N на елементи

1 3 4 5 3 1 4 5 5 3 2 3 // елементи на низата
vtor cas \

#include<stdio.h>
int parnineparni(int a[100],int n){
for(int i=0;i<n;i++){
if(a[i]%2==0){
printf("%d ",a[i]);
}
}
printf("\n");
for(int i=0;i<n;i++){
if(a[i]%2!=0){
printf("%d ",a[i]);
}
}
}
int main(){
int a[100];
int i, n;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
parnineparni(a,n);
}

Од тастатура се внесува цел број M, а потоа M низи од цели броеви. За секоја низа
прво се внесува бројот на елементи во низата N (N<=100), а потоа и елементите на
низата.

#include<stdio.h>
/*
5
1 2 3 4 5
Vnesi element koj sakate da go dodadete:100
Vnesi pozicija na koj sakate da go dodadete elementot:2
1 2 100 4 5
*/
int main(){
int a[100];
int i,j,n,m,element,pozicija;
scanf("%d",&m);
for(i=0;i<m;i++){
scanf("%d",&a[i]);
}
printf("Vnesi element koj sakate da go dodadete:");
scanf("%d",&element);
printf("Vnesi pozicija na koj sakate da go dodadete elementot:");
scanf("%d",&pozicija);
a[pozicija]=element;
for(i=0;i<m;i++){
printf("%d ",a[i]);
}

#include<stdio.h>
/*
5
1 2 3 4 5
Vnesi element koj sakate da go dodadete:100
Vnesi pozicija na koj sakate da go dodadete elementot:2
1 2 100 4 5
*/
int main(){
int a[100];
int i,j,n,m,element,pozicija;
scanf("%d",&m);
for(i=0;i<m;i++){
scanf("%d",&a[i]);
}

printf("Vnesi pozicija na koj sakate da go dodadete elementot:");


scanf("%d",&pozicija);
for(i=pozicija;i<m;i++){
a[i]=a[i+1];
}
m--;
for(i=0;i<m;i++){
printf("%d ",a[i]);
}

#include<stdio.h>
/*
Da se izbrise element od niza
*/
int main(){
int a[100];
int i,j,n,m,element,pozicija;
scanf("%d",&m);
for(i=0;i<m;i++){
scanf("%d",&a[i]);
}

printf("Vnesi pozicija na koj sakate da go dodadete elementot:");


scanf("%d",&pozicija);
for(i=pozicija;i<m;i++){
a[i]=a[i+1];
}
m--;
for(i=0;i<m;i++){
printf("%d ",a[i]);
}

#include<stdio.h>
/*
Da se ispecatat site prosti elementi od niza
12 2 13 8 11

*/
int main(){
int a[100];
int i,j,n,m,brojac;
scanf("%d",&m);
for(i=0;i<m;i++){
scanf("%d",&a[i]);
}

for(i=0;i<m;i++){ // gi izminuvam site elementi od nizata


brojac=0;//za sekoj broj go vakjam brojacot na 0 zatoa sto imaat razlicen broj na
deliteli
for(j=1;j<=a[i];j++){ //za sekoj element posebno trgnuvam od
if(a[i]%j==0){
brojac++;
}
}
if(brojac==2){
printf("%d ",a[i]);
}
}
}

#include<stdio.h>
/*
Da se izbrisat site prosti elementi od niza
5
12 2 13 8 11
12 8
*/
int main(){
int a[100];
int i,j,n,m,brojac,k;
scanf("%d",&m);
for(i=0;i<m;i++){
scanf("%d",&a[i]);
}

for(i=0;i<m;i++){ // gi izminuvam site elementi od nizata


brojac=0;//za sekoj broj go vakjam brojacot na 0 zatoa sto imaat razlicen broj na
deliteli
for(j=1;j<=a[i];j++){ //za sekoj element posebno trgnuvam od
if(a[i]%j==0){
brojac++;
}
}
if(brojac==2){ // elementot e prost
for(k=i;k<m;k++){ //trgnuvam od pozicijata kaj sto e prostiot element
a[k]=a[k+1]; //i go brisam
}
m--;// ja namaluvam nizata za tolku elementi kolku sto sum izgrisal
i--;// ja brisam pozicijata na prostiot element
}

for(i=0;i<m;i++){
printf("%d ",a[i]);
}
}
/*

*/

matrica

#include<stdio.h>
/*
i j
a[0][0] a[0][1] a[0][2]
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]
*/
int main(){
int a[100][100];
int i,j,n,m;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
for(j=0;j<m;j++){
printf("%d ",a[i][j]);
}
printf("\n");
}
}

#include<stdio.h>
/*
#include<stdio.h>
/*
i j
a[0][0] a[0][1] a[0][2]
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]
glavna dijagonala
if(i==j){
}
*/
int main(){
int a[100][100];
int i,j,n,m;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
for(j=0;j<m;j++){
// glavna dijagonala
if(i==j){
printf("%d ",a[i][j]);
}
}
printf("\n");
}
}

#include<stdio.h>
/*
i j
a[0][0] a[0][1] a[0][2]
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]
glavna dijagonala
if(i==j){
}
sporedna dijagonala
if(i+j==n-1){
}
*/
int main(){
int a[100][100];
int i,j,n,m;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
for(j=0;j<m;j++){
// sporedna dijagonala
if(i+j==n-1){
printf("%d ",a[i][j]);
}
}
printf("\n");
}
}
#include<stdio.h>
/*
i j
a[0][0] a[0][1] a[0][2]
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]
glavna dijagonala
if(i==j){
}
sporedna dijagonala
if(i+j==n-1){
}
nad glavna dijagonala
if(i<j){
}
*/
int main(){
int a[100][100];
int i,j,n,m;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
for(j=0;j<m;j++){
// nad glavna dijagonala
if(i<j){
printf("%d ",a[i][j]);
}
}
printf("\n");
}
}

#include<stdio.h>
/*
i j
a[0][0] a[0][1] a[0][2]
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]
glavna dijagonala
if(i==j){
}
sporedna dijagonala
if(i+j==n-1){
}
nad glavna dijagonala
if(i<j){
}
*/
int main(){
int a[100][100];
int i,j,n,m;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
for(j=0;j<m;j++){
// pod glavna dijagonala
if(i>j){
printf("%d ",a[i][j]);
}
}
printf("\n");
}
}

#include<stdio.h>
/*
i j
a[0][0] a[0][1] a[0][2]
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]
glavna dijagonala
if(i==j){
}
sporedna dijagonala
if(i+j==n-1){
}
nad glavna dijagonala
if(i<j){
}
pod glavna dijagonala
if(i>j){
}
nad sporedna dijagonala
if(i+j<n-1){
}
pod sporedna dijagonala
if(i+j>n-1){
*/
int main(){
int a[100][100];
int i,j,n,m;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
for(j=0;j<m;j++){
// pod sporedna dijagonala
if(i+j>n-1){
printf("%d ",a[i][j]);
}
}
printf("\n");
}
}

#include<stdio.h>
/*
i j
a[0][0] a[0][1] a[0][2]
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]
3
3
1 2 3
4 5 6
7 8 9
6
15
24
*/
int main(){
int a[100][100];
int i,j,n,m,zbir;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
zbir=0;
for(j=0;j<m;j++){
zbir=zbir+a[i][j];
}
printf("%d\n",zbir);
}
}

#include<stdio.h>
/*
i j
a[0][0] a[0][1] a[0][2]
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]
3
3
1 2 3
4 5 6
7 8 9
12
15
18

*/
int main(){
int a[100][100];
int i,j,n,m,zbir;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
zbir=0;
for(j=0;j<m;j++){
zbir=zbir+a[j][i];
}
printf("%d\n",zbir);
}
}

#include<stdio.h>
/*
i j
a[0][0] a[0][1] a[0][2]
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]
DA se najde maximalniot element vo sekoja redica
3
3
1 22 3
41 5 61
17 8 9
22
61
17

*/
int main(){
int a[100][100];
int i,j,n,m,zbir,max;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
max=0;
for(j=0;j<m;j++){
if(max<a[i][j]){
max=a[i][j];
}
}
printf("%d\n",max);
}
}

nclude<stdio.h>
/*
i j
a[0][0] a[0][1] a[0][2]
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]
DA se najde maximalniot element vo sekoja redica
3
3
1 22 3
41 5 61
17 8 9
min: 1 poz: 0 0
max: 61 poz: 1 2

*/
int main(){
int a[100][100];
int i,j,n,m,zbir,max=-999,min=999,pozmaxi=0,pozmaxj=0,pozmini=0,pozminj=0;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
for(j=0;j<m;j++){
if(max<a[i][j]){
max=a[i][j];
pozmaxi=i;
pozmaxj=j;
}
if(min>a[i][j]){
min=a[i][j];
pozmini=i;
pozminj=j;
}
}
}
printf("min: %d, poz:%d %d\n",min,pozmini,pozminj);
printf("max: %d, poz:%d %d\n",max,pozmaxi,pozmaxj);
}

#include<stdio.h>
/*
i j
a[0][0] a[0][1] a[0][2]
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]
DA se najde sredniot element vo sekoja redica i vo sekoja kolona
3
3
1 22 3
41 5 61
17 8 9
22
5
8
41
5
61

*/
int main(){
int a[100][100];
int i,j,n,m,zbir,max=-999,min=999,pozmaxi=0,pozmaxj=0,pozmini=0,pozminj=0;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&a[i][j]);
}
}

for(i=0;i<n;i++){
if(m%2!=0) {
printf("%d\n",a[i][m/2]);
}
}
printf("\n");
for(j=0;j<n;j++){
if(n%2!=0) {
printf("%d\n",a[n/2][j]);
}
}
}

You might also like