Advertisement
nikitast

bilet_12

Jan 19th, 2021
851
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.13 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #include <stdio.h>
  3. #include <string.h>
  4. #include <stdlib.h>
  5.  
  6.  
  7. struct Node
  8. {
  9.     int data;
  10.     Node* next;
  11. };
  12.  
  13. void add_node(Node*& first, Node*& last, int data)
  14. {
  15.     if (first == NULL)
  16.     {
  17.         first = new Node;
  18.         first->data = data;
  19.         first->next = NULL;
  20.         last = first;
  21.     }
  22.     else
  23.     {
  24.         Node* cur = new Node;
  25.         cur->data = data;
  26.         last->next = cur;
  27.         cur->next = NULL;
  28.         last = cur;
  29.     }
  30. }
  31.  
  32. void print_list(Node* first)
  33. {
  34.     while (first != NULL)
  35.     {
  36.         printf("%d ", first->data);
  37.         first = first->next;
  38.     }
  39. }
  40.  
  41. int sum_num(int num)
  42. {
  43.     int sum = 0;
  44.     while (num > 0)
  45.     {
  46.         sum += num % 10;
  47.         num = num / 10;
  48.     }
  49.     return sum;
  50. }
  51.  
  52. void find_num(Node* first)
  53. {
  54.     int sum;
  55.     while (first != NULL)
  56.     {
  57.         sum = sum_num(first->data);
  58.         if (sum > 10)
  59.             printf("%d, %d\n", first->data, sum);
  60.         first = first->next;
  61.     }
  62. }
  63.  
  64. int main()
  65. {
  66.     Node* first = NULL;
  67.     Node* last = NULL;
  68.     char snum[80];
  69.     puts("Enter numbers:");
  70.     while (gets_s(snum), strlen(snum) > 0)
  71.         add_node(first, last, atoi(snum));
  72.     puts("List:");
  73.     print_list(first);
  74.     puts("\n\nNumbers:");
  75.     find_num(first);
  76.     return 0;
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement