Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <malloc.h>
- #include <string.h>
- #include <stdbool.h>
- #include <math.h>
- void shiftToTheLeft(char* row, int start, int length);
- int integerValue();
- int getLength(char* word);
- //int charInToIntAndSum(char* string);
- int main()
- {
- char* string;
- int n;
- int lengthString = 0;
- printf("\nEnter a number of symbols in string: \n");
- n = integerValue();
- if (!(string = (char*)calloc((n + 1), sizeof(char))))
- {
- printf("\nOoops,memory is not allocated\n");
- }
- printf("Enter a text with %d symbols: \n", n);
- rewind(stdin);
- fgets(string, n + 1, stdin);
- printf("\nThe text you entered is: \n");
- puts(string);
- lengthString = getLength(string);
- int k = 0;
- for (int a = 0; a < 2; a++)
- {
- k = 0;
- for (int i = 0; i < lengthString; i++)
- {
- if (string[i] == '0' || string[i] == '1' || string[i] == '2' || string[i] == '3' || string[i] == '4'
- || string[i] == '5' || string[i] == '6' || string[i] == '7' || string[i] == '8' || string[i] == '9')
- {
- continue;
- }
- k++;
- if (string[i] == ' ' || string[i] == ' \0')
- {
- k = 0;
- }
- if (k <= 3 && (string[i + 1] == ' ' || string[i + 1] == '\0' || string[i] == '\n'))
- {
- shiftToTheLeft(string, i + 1, k + 1);
- i = 0;
- k = 1;
- }
- }
- }
- //int b = charInToIntAndSum(string);
- printf("\nNew text you entered is: \n");
- puts(string);
- //printf("Your B: %d", b);
- free(string);
- return 0;
- }
- int integerValue()
- {
- char c;
- int n;
- while ((scanf_s("%d%c", &n, &c) != 2 || c != '\n'))
- {
- printf("You entered incorrect value. Please try again: \n");
- rewind(stdin);
- }
- return n;
- }
- int getLength(char* word)
- {
- int k = 0;
- while (*(word + k) != '\0')
- {
- ++k;
- }
- return k;
- }
- void shiftToTheLeft(char* row, int start, int length)
- {
- int rowLength = getLength(row);
- for (int i = start; i < rowLength + 1; i++)
- {
- *(row + i - length + 1) = *(row + i + 1);
- }
- row = (char*)realloc(row, (rowLength + 1 - length + 1) * sizeof(char));
- *(row + rowLength + 1 - (length + 1)) = '\0';
- }
- //int charInToIntAndSum(char* string)
- //{
- // int temp = 0;
- // int k = 0;
- // int a = 0;
- // for (int i = 0; i < getLength(string); i++)
- // {
- // while ((string[i] == '0' || string[i] == '1' || string[i] == '2' || string[i] == '3' || string[i] == '4'
- // || string[i] == '5' || string[i] == '6' || string[i] == '7' || string[i] == '8' || string[i] == '9')
- // && (string[i + 1] == ' ' || string[i + 1] == '\0'))
- // {
- // k ++;
- // }
- // for (int j = i; j = 0; j--)
- // {
- // if (string[j] == ' ')
- // {
- // break;
- // }
- // for (k; k = 0; k--)
- // {
- //
- // temp = string[j] - '0';
- // a = temp * pow(10, k);
- // a = a + a;
- // }
- // }
- // }
- // return a;
- //}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement