C/C++

  • Креатор на темата Креатор на темата Драган
  • Време на започнување Време на започнување
Се работи за Ц.
...

Код:
#include <stdio.h>
int max (int a, int b, int c)
{
    if(a>=b && a>=c)
    return a;
    if(a<b)
    return max(b,a,c);
    if(b<c)
    return max(a,c,b);
}
int main(void) {
    int a,b,c;
    while(scanf("%d %d %d", &a,&b,&c)==3)
    {
        printf("%d\n",max(a,b,c));
    }
    return 0;
}
 
Многу попроста рекурзијата него мојата. Со некои корекции излезе задачата. Фала.
 
Здраво, ќе биде ли некој љубезен да ми напише C код за соседни елементи на елемент во матрица, можеби има претходно некој кажано не неможам да најдам :)
 
Збир на соседните членови на матрицата, и збирот да се испечати во друга матрица.

#include <stdio.h>
int main () {
int i,j,n,m,suma;
int a[100][100],rez[100][100];
printf("Vnesi golemna na matrica:\n"); scanf("%d %d",&n,&m);
printf("Vnesi clenovi:\n");
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&a[j]);
}
}
printf("\n");
for(i=0;i<n;i++){
printf("\n");
for(j=0;j<m;j++){
printf("%d\t",a[j]);
}
}
for(i=0;i<n;i++){
for(j=0;j<m;j++){
suma=0;
if(i>0) suma+=a[i-1][j];
if(i<n-1) suma+=a[i+1][j];
if(j>0) suma+=a[j-1];
if(j<m-1) suma+=a[j+1];
rez[j]=suma;
}
}
printf("\n");
for(i=0;i<n;i++){
printf("\n");
for(j=0;j<m;j++){
printf("%d\t",rez[j]);
}
}

return 0;
}
 
Некој да ми помогне во врска со програмава:
Да се напише програма која секое појавување на самогласка во влезната датотека vlez.txt ќе го повтори k пати. Излезот да се запише во друга датотека izlez.txt. Вредноста на параметарот k се наоѓа во првиот ред на датотеката. Максималната должина на еден ред е 100 знаци.
Забелешка: Не се прави разлика помеѓу големи и мали букви.
input:
3
Denes se polaga vtor kolokvium po predmetot Strukturno programiranje.
Kolokviumot trae 2 casa. Za resavanje se dadeni 3 zadaci.
output:
Deeeeneeees seeee poooolaaaagaaaa vtoooor koooolooookviiiiuuuum poooo preeeedmeeeetoooot Struuuuktuuuurnoooo proooograaaamiiiiraaaanjeeee.
Koooolooookviiiiuuuumoooot traaaaeeee 2 caaaasaaaa. Zaaaa reeeesaaaavaaaanjeeee seeee daaaadeeeeniiii 3 zaaaadaaaaciiii.

PHP:
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#define MAX 100
int isvowel(char c)
{
    return (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u' || c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U');
}
int main()
{
    int i, k,j,pos;
    char row[MAX], newRow[500];
    FILE *input, *output;
    input = fopen("vlez.txt", "r");
    output = fopen("E:\\izlez.txt", "w");
 
    fscanf(input, "%d", &k);
    while(fgets(row, MAX, input))
    {
        int br=0;
        for(i=0; i<strlen(row); i++)
        {
            newRow[i]=row[i];
            br++;
            pos=br;
            if(isvowel(row[i]))
            {
                while(j<k)
                {
                    newRow[pos]=row[i];
                    pos++;
                    j++;
                }
            }
            br=0;
        }
        fprintf(output, "%s", newRow);
    }
    //rff();
    return 0;
 
}
 
Некој да ми помогне во врска со програмава:

input:

output:


PHP:
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#define MAX 100
int isvowel(char c)
{
    return (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u' || c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U');
}
int main()
{
    int i, k,j,pos;
    char row[MAX], newRow[500];
    FILE *input, *output;
    input = fopen("vlez.txt", "r");
    output = fopen("E:\\izlez.txt", "w");
 
    fscanf(input, "%d", &k);
    while(fgets(row, MAX, input))
    {
        int br=0;
        for(i=0; i<strlen(row); i++)
        {
            newRow[i]=row[i];
            br++;
            pos=br;
            if(isvowel(row[i]))
            {
                while(j<k)
                {
                    newRow[pos]=row[i];
                    pos++;
                    j++;
                }
            }
            br=0;
        }
        fprintf(output, "%s", newRow);
    }
    //rff();
    return 0;
 
}

Код:
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#define MAX 100
int isvowel(char c)
{
    return (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u' || c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U');
}
 
int main(){
   
    char brojpat;
    int brojac=0;
    int brojpati;
    FILE *input, *output;
    input = fopen("vlez.txt", "r");
    output = fopen("izlez.txt", "w");
    char c;
    if(input!=NULL){
        brojpat = fgetc(input);
    }else{
        printf("Greska pri otvaranje");
        return 1;
    }
   
    brojpati = brojpat - '0';
    printf("%d",brojpati);
    while((c=fgetc(input))!=EOF){
       
        if(isvowel(c)){
            while(brojac<=brojpati){
                fputc(c,output);
                brojac+=1;
            }
            brojac=0;
        }else{
                fputc(c,output);
            }
    }
   
    return 0;
}
 
Помош малку за програмава:
да се напише програма која ја пресметува и табелира функцијата
y={4-x*x za 0<=x<=2
sqrt(x)-2 za 2<x<=6
1-sinx za 6<x<=10}
за вредности од 0 до 10 со чекор 0.2 во формата : x y ;
 
#include <iostream>
#include <cmath>
using namespace std;
float funkcija(double x);
int main()
{
double x;
cout<<"Vnesi vrednost za x"<<endl;
cin>>x;
cout<<"x="<<x<<endl;
float rezultat;
rezultat=funkcija(x);
return 0;
system ("pause");
}
float funkcija(double x)
{
float funkcija;
if(x<2)
{
funkcija=sqrt((pow(x,2)+5)/(x*(x+2)));
return funkcija;
}
else if(x=2)
{
funkcija=sqrt(x+2);
return funkcija;
}
else if(x>2)
{
funkcija=3+log(x);
return funkcija;
}
}

Може ли некој да ми каже каде ми е грешката?:confused:
 
Помош малку за програмава:
да се напише програма која ја пресметува и табелира функцијата
y={4-x*x za 0<=x<=2
sqrt(x)-2 za 2<x<=6
1-sinx za 6<x<=10}
за вредности од 0 до 10 со чекор 0.2 во формата : x y ;

Ти треба уште програмата?
 
#include <iostream>
#include <cmath>
using namespace std;
float funkcija(double x);
int main()
{
double x;
cout<<"Vnesi vrednost za x"<<endl;
cin>>x;
cout<<"x="<<x<<endl;
float rezultat;
rezultat=funkcija(x);
return 0;
system ("pause");
}
float funkcija(double x)
{
float funkcija;
if(x<2)
{
funkcija=sqrt((pow(x,2)+5)/(x*(x+2)));
return funkcija;
}
else if(x=2)
{
funkcija=sqrt(x+2);
return funkcija;
}
else if(x>2)
{
funkcija=3+log(x);
return funkcija;
}
}

Може ли некој да ми каже каде ми е грешката?:confused:

Не го печатеш резултатот, ако тоа треба да прави...
 
da mi treba za utre napisi ja sega ako si vo mozost fala :)

На УГД си?
Код:
#include <iostream>
#include <cmath>
 
using namespace std;
 
int main()
{
    float y;
    for(float i = 0; i < 10; i+=0.2){
        if(i >= 0 && i <= 2){
            y = 4 - pow(i, 2);
        }
        else if(i >= 2 && i <= 6){
            y = sqrt(i) - 2;
        }
        else if(i >= 6 && i <= 10){
            y = 1 - sin(i);
        }
        cout << i << "\t" << y << endl;
    }
    return 0;
}
 
На УГД си?
Код:
#include <iostream>
#include <cmath>

using namespace std;

int main()
{
    float y;
    for(float i = 0; i < 10; i+=0.2){
        if(i >= 0 && i <= 2){
            y = 4 - pow(i, 2);
        }
        else if(i >= 2 && i <= 6){
            y = sqrt(i) - 2;
        }
        else if(i >= 6 && i <= 10){
            y = 1 - sin(i);
        }
        cout << i << "\t" << y << endl;
    }
    return 0;
}
 
Требит да направам задача за било кој број да пресметам квадрат со while/do помош?
 
Требит да направам задача за било кој број да пресметам квадрат со while/do помош?

#include <iostream>
using namespace std;

void main()
{
const float tol = 0.000005;
float value;
float old_app, new_app;
cout << "Kvadrat od brojot.."
<< endl << endl;
cout << "Vnesi pozitiven broj: ";
cin >> value;
if (value < 0.0)
cout << "Ne mozam da presmetam kvadrat na negativen broj"
<< endl;
else
if (value == 0.0)
cout << "kvadrat od "
<< value
<< " e 0.0"
<< endl;
else
{
old_app = value;
new_app = (old_app + value/old_app)/2;
while (fabs((new_app-old_app)/new_app) > tol)
{
old_app = new_app;
new_app = (old_app + value/old_app)/2;
}
cout << "Kvadratot "
<< value
<< " e " << new_app
<< endl;
}
}

Ваљда помогнав.
 

Kajgana Shop

Back
На врв Bottom