powrót
//Ćwiczenie 1
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
unsigned int liczba,
//zmienna będzie przechowywać sumę cyfr zmiennej liczba
suma = 0;
cout<<"Podaj liczbę: ";
cin>>liczba;
cout<<"Suma cyfr liczby "<<liczba<<" wynosi: ";
while(liczba>0)
{
suma+=liczba%10; //uzyskanie cyfry jednosci
liczba/=10; //skrócenie o cyfrę jednosci
}
cout<<suma<<endl;
system("pause");
return 0;
}
//Ćwiczenie 2
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
unsigned int a, b;
unsigned long long wynik=1;
cout<<"Podaj liczbę podstawę i wykładnik : ";
cin>>a>>b;
if(a==0&&b==0)
cout<<-1<<endl;
else
if(a==0)
cout<<0<<endl;
else
{
for(int i=0;i<b;i++)
wynik*=a;
cout<<wynik<<endl;
}
system("pause");
return 0;
}
//Ćwiczenie 3
#include<iostream>
#include<cstdlib>
#include<conio.h>
#include "windows.h"
void gotoxy(int x, int y)
{
COORD c;
c.X = x - 1;
c.Y = y - 1;
SetConsoleCursorPosition (GetStdHandle(STD_OUTPUT_HANDLE), c);
}
using namespace std;
int main()
{
char litera;
unsigned int n;
cout<<"Podaj literę, którą chcesz narysować: ";
cin>>litera;
cout<<"Podaj długosć i szerokosć litery: ";
cin>>n;
system("cls");
switch(litera)
{
case 'O':
//rysowanie poziomych kresek
for(int i=0;i<n;i++)
{
gotoxy(1+i,1);
cout<<"*";
gotoxy(1+i,n);
cout<<"*";
}
//rysowanie pionowych kresek
for(int i=1;i<n-1;i++)
{
gotoxy(1,1+i);
cout<<"*";
gotoxy(n,i);
cout<<"*";
}
break;
case 'L':
//rysowanie kreski pionowej
for(int i=0;i<n-1;i++)
{
gotoxy(1,i+1);
cout<<"*";
}
//rysowanie kreski poziomej
for(int i=0;i<n;i++)
{
gotoxy(1+i,n);
cout<<"*";
}
break;
case 'M':
//rysowanie kresek pionowych
for(int i=0;i<n;i++)
{
gotoxy(1,1+i);
cout<<"*";
gotoxy(2*n-1,1+i);
cout<<"*";
}
//rysowanie kresek ukosnych
for(int i=1;i<n;i++)
{
gotoxy(1+i,1+i);
cout<<"*";
gotoxy(n+i,n-i);
cout<<"*";
}
break;
case 'Z':
//rysowanie poziomych kresek
for(int i=0;i<n;i++)
{
gotoxy(i+1,1);
cout<<"*";
gotoxy(i+1,n);
cout<<"*";
}
//rysowanie kreski ukosnej
for(int i=1;i<n-1;i++)
{
gotoxy(n-i,i+1);
cout<<"*";
}
break;
case 'X':
//rysowanie kresek ukosnych
for(int i=1;i<=n;i++)
{
gotoxy(i,i);
cout<<"*";
gotoxy(n-i+1,i);
cout<<"*";
}
break;
case 'R':
//rysowanie poziomych kresek
for(int i=0;i<n;i++)
{
gotoxy(1+i,1);
cout<<"*";
gotoxy(1+i,n);
cout<<"*";
}
//rysowanie pionowych kresek
for(int i=1;i<=n;i++)
{
gotoxy(1,i); //pion
cout<<"*";
gotoxy(1,n+i-1); //przedłużenie pionu
cout<<"*";
gotoxy(n,i); //pion równoległy
cout<<"*";
}
//rysowanie kreski ukosnej
for(int i=1;i<n;i++)
{
gotoxy(i+1,n+i);
cout<<"*";
}
break;
default:
cout<<"Podałes złą literę!";
}
getch();
system("cls");
return 0;
}
//Ćwiczenie 4
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
unsigned int n, m, i;
cout<<"Podaj przedział: ";
cin>>n>>m;
cout<<"Wybierz opcję:\n";
cout<<"1 - liczby są nieparzyste lub podzielne przez 5\n";
cout<<"2 - liczby w dzieleniu przez 3 dają resztę 2 i cyfrą jedności jest 3 lub 4\n";
cout<<"3 - dzielą się przez 5, ale nie dzielą się przez 3\n";
char opcja;
cin>>opcja;
switch(opcja)
{
case '1':
for(i = n;i<=m;i++)
if(i%2==1 || i%5==0)
cout<<i<<" ";
break;
case '2':
for(i = n;i<=m;i++)
if(i%3==2 && (i%10==3 || i%10 == 4))
cout<<i<<" ";
break;
case '3':
for(i = n;i<=m;i++)
if(i%5==0 && i%3!=0)
cout<<i<<" ";
break;
default:
cout<<"Podałes nieprawidłową opcję!";
}
cout<<endl;
system("pause");
return 0;
}
//Ćwiczenie 5
//program działa dla niewielkiego n ponieważ wartosci
//potęg i silni bardzo szybko rosną
#include<iostream>
#include<cstdlib>
#include<iomanip>
using namespace std;
int main()
{
double x, wynik;
unsigned int n, jeden = 1;
unsigned long long silnia = 1, spom = 1, potega;
cout<<"Podaj argument funkcji sinus: ";
cin>>x;
potega = x;
wynik = x;
cout<<"Podaj liczbę wyrazów szeregu Taylora: ";
cin>>n;
for(int i=1;i<n;i++)
{
++jeden; //odpowiada za to, czy potęga (-1) jest parzysta czy nie
potega = potega * x * x; //wyznaczanie potęgi
silnia = silnia * (++spom) * (++spom); //wyznaczanie silnie
wynik = wynik +(jeden%2==0?-1:1) * (double)potega/(double)silnia;
}
cout<<"sin("<<x<<") = "<<fixed<<setprecision(6)<<wynik<<endl;
system("pause");
return 0;
}