5100

Создание консольных приложений в среде Visual C++

Курсовая

Информатика, кибернетика и программирование

Цель работы: закрепление основных теоретических положений, изложенных в лекциях по курсу Программирование на языках высокого уровня, отработка навыков практического программирования в среде VisualC++ при создании консольных программ, в...

Русский

2012-12-03

52.5 KB

26 чел.

Цель работы: закрепление основных теоретических положений, изложенных в лекциях по курсу «Программирование на языках высокого уровня»,  отработка навыков практического программирования в среде Visual C++ при создании консольных программ, включая многофайловые.

Задания курсовой работы и особенности алгоритмов реализации.

Задание №1    Даны натуральные числа N и M (N>M). Вычислить

#include "stdafx.h"

#include "stdlib.h"

#include "math.h"

int fact(int k)

{

       int res = 1;

       for (int i = 1; i <= k; ++i)

       {

               res *= i;

       }

 

       return res;

}

double resh(int M,int N)

{

 int k=0,f=0;

 double res;

 for(k=M; k<N;k++)

 {f=fact(k);

  res+=k*k*log(f);

 }

 return res;

}

void funct()

{   int m,n;

 double result;

   printf("Vvedite M\n");

scanf("%d",&m);

printf("Vvedite N\n");

scanf("%d",&n);

result=resh(m,n);

printf("Otvet %f",result);

getchar();

}

 res  – это переменная, которая позволяют хранить, модифицировать и извлекать значения. Переменная, или объект – это именованная область памяти, к которой мы имеем доступ из программы; туда можно помещать значения и затем извлекать их. 

double-обозначает формат числа с плавающей запятой 

Задание №2

Найти  натуральное  число из интервала [a,b] с максимальной суммой делителей. (Для нахождения суммы делителей числа использовать функцию.)

#include "stdafx.h"

#include "stdlib.h"

#include "math.h"

int delit(int a,int b)

{

 int sum=0,int summax=1;

 int ch=1,i;

 for ( i=a;i<b;i++)

{

 sum=0;

 for (int k=1;k<(i%2+1);k++)

  if ((i%k)==0)

   sum+=k;

         sum+=i;

 if (sum>summax)

{

 summax=sum;

 ch=i;

}

}

printf("Delitel %d\n",sum);

 return i;

}

void funct2()

{   int a,b,c;

printf("Vvedite a");

scanf("%d",&a);

printf("Vvedite b");

scanf("%d",&b);

c=delit(a,b);

printf("Chislo=%d",c);

 getchar();

}

Задание №3

Во введенной строке символов (последний '*') подсчитать общее количество цифр и букв ‘с’.

#include "stdafx.h"

#include "stdlib.h"

#include "string.h"

int count_c(char str[])

{  char c='c';

  int d=0;

 for (int i=1; i<strlen(str);i++)

{

  if (strcmp(&str[i],&c))

   d++;

}

 return d;

}

int count_dig(char str[])

{   char *digit="1234567890";

 int d=0;

 for (int i=1; i<strlen(str);i++)

{

  if (strcmp(&str[i],digit))

   d++;

}

 return d;

}

void funct3()

{   char *str;

printf("vvedite predlogenie\n");

gets(str);

printf("v predlojenie %d -c\n",count_c(str));

printf("v predlojenie %d -cifr\n",count_dig(str));

 getchar();

}

Функция strcmp() сравнивает в лексикографическом порядке две строки и возвращает целое значение, зависящее следующим образом от результата сравнения. 

Функция COUNT всегда возвращает значение типа int. 

Переменную типа char можно рассматривать двояко: как целое число, занимающее 1 байт .

strlen — функция стандартной библиотеки, для возврата длины нуль-терминированной строки без символа окончания строки 

Задание 4

Написать и протестировать функцию, которая по заданной строке Str формирует новую строку, состоящую только из цифр, входящих в Str.


#include
 "stdafx.h"
#include "stdlib.h"
#include "string.h"
void myfunct(char str[])
{
char *chars=("qwertyuiopasdfghjklzxcvbnm,./';][{}:?><QWERTYUIOPASDFGHJKLZXCVBNM");
char *p;
int i;
for (i=0; i<strlen(str);i++)
{
p=strtok(&str[i],chars);
puts(p); 
}
}
void funct4()
{ char str[100];
printf("Vvedite stroku\n");
gets(str);
myfunct(str);
getchar();
getchar();
getchar();
}

Задание №5

Даны вещественные числа a и b (а<b). Сформировать матрицу Х[10,10], элементами которой являются вещественные случайные числа, равномерно распределенные на отрезке [а,b]. Определить сумму элементов матрицы, сумма номеров строк и столбцов которых равна n.

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

/*  Даны вещественные числа a и b (а<b). Сформировать матрицу Х[10,10],

 элементами которой являются вещественные случайные числа, равномерно распределенные на отрезке [а,b].

 Определить сумму элементов матрицы, сумма номеров строк и столбцов которых равна n.*/

#include <iostream>

#include <iomanip>

#include <stdlib.h>

#include <time.h>

using namespace std;

int main()

{

       const int SIZE = 10;//создаём переменную под величину массива(размерность)

       int matrix[SIZE][SIZE], a, b, sum, n;

       srand(time(NULL));      

       //запрашиваем верхнюю и нижнюю границы рандомизации

       cout << "Enter a: ";

       cin >> a;

       cout << "Enter b: ";

       cin >> b;

       cout << "Enter n: ";

       cin >> n;

       //проходим по ячейкам матрицы и заполняем

       for(int i = 0; i < SIZE; i++)

       {

               for(int j = 0; j < SIZE; j++)

               {

                       matrix[i][j] = a + rand() % (b + 1);

               }

       }

       //проходим еще раз, но проверяем выполнение условия задачи и закидываем подходящие элементы в переменную sum

       

       for (int i = 0;i < 10;i++)

               {

                       for (int j = 0;j < 10;j++)

                               {

                                       if (i+j==n)

                                               {

                                                       sum=sum+matrix[i][j];

                                               }

                               }

               }

       cout << sum;

       

}

Задание №6

Дан целочисленный массив S[26]. Сформировать матрицу А, первая строка которой будет содержать элементы массива с четными номерами, а вторая - с нечетными.



#include "stdafx.h"
#include "stdlib.h"
void formmas(int s[26])
{int i=0,j=0,x,h;
int G[13][13];
for(int k=0; k<26;k+=2)
{
i++;
G[0][i]=s[k];
}
for (int k=1;k<26;k+=2)
{
j++;
G[1][j]=s[k];
}
for (int x=0;x<13;x++)
for(int h=0;h<2;h++);
{
printf("%d\n\n",G[x][h]);
}
}
void funct6()
{ int mas[26];
int i,k;
printf("ZADACHAAAAA 5");
for (i=0;i<26;i++)
mas[i]=rand()%50;
formmas(mas);
getchar();
getchar();
getchar();
}


 

А также другие работы, которые могут Вас заинтересовать

59806. Ісус Христос – ідеал для наслідування 58.5 KB
  Одній милій француженці на імя Габріель що жила у минулому столітті і в очищеному серці часто чула голос Спасителя якось Учитель сказав: €œДивися на Моє життя як на зразок з якого ти повинна списувати як маленька дівчинка свої учнівські роботиâ€. Бо є тільки мить між минулим і майбутнім саме вона називається життям. Звідти ти побачиш світ і власне життя в інших вимірах в інших цінностях. Життя кожної людини уподібнене дорозі на вершину гори.
59807. Сценарій свята для учнів 6-7 класів «Мала хата – гостей багато» (українські вечорниці) 517.5 KB
  До хати збираються дівчата. Одарка Марійка разом зітхають і притуляються до нього: Микола Господар: Одарко чи чуєш Одарко Ти ще й досі не зварила вечері а вже скоро почнуть сходитися дівчата.
59808. Українські вечорниці. Виховний захід у 4 класі 124.5 KB
  Пісня Як у нас на Україні Додаток Колядка Добрий вечір тобі пане господарю Добрий вечір тобі пане господарю радуйся Ой радуйся земле Син Божий народився Застеляйте столи та все килимами радуйся Ой радуйся земле Син Божий народився...
59809. До родини на гостину 42.5 KB
  Сидить бабуся з дітьми. Стукіт у двері Бабуся О хтось до нас іде Заходять діти. Діти Добридень Бабуся Здоровенькі були Ласкаво просимо до нашої світлиці Ведуча Діти Ми завітали до української хати.
59811. Христос Воскрес – радійте люди! 81 KB
  Виходять три дівчинки з писанками в руках. Iша: Нумо поцокаймося писанками чия найміцніша Дівчатка цокаються. Дівчинка Орися: Ага моя писанка усі ваші побила Бачите яка вона гарна і міцна IIга дівчинка: Подумаєш Дівчата ходім гагілки водити а пасанку свою ти ...
59812. Великдень-найбільше свято України 82 KB
  War die heutige Stunde interessant? Was hat euch gut bzw. nicht gut gefallen? Ihr habt heute sehr gut gearbeitet. Alle waren aktiv. Alle bekommen heute gute Noten.
59813. Світле свято Великодня 92 KB
  В мене вдача щира й сміла І душа моя здорова Українська в мене мова. А моя бабуся вчила мене що шкаралупи від писанок зберігають а потім вивішують на городі на палицях щоб у землі не заводилися червяки.