0% found this document useful (0 votes)
9 views

code

Uploaded by

taikhoanffao1
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

code

Uploaded by

taikhoanffao1
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 14

8.

1
int32_t main()
{
char s[300];
cin.getline(s, 300);
int ans = 0;
for (int i = 0; s[i]; i++) if (s[i] - '0' >= 0 && s[i] - '0' <= 9) {ans = 1; break;}
if (ans) cout << "CHUOI KHONG HOP LE.";
else cout << s;
}
8.2
int myStrlen(char s[]) {
int len = 0;
while (s[len] != '\0') {
len++;
}
return len;
}

void myStrcpy(char s[], int vt, char s1[], int k) {


int i = 0;
while (s1[vt] != '\0' && (k == 0 || i < k)) {
s[i++] = s1[vt++];
}
s[i] = '\0';
}

void myStrcat(char s[], char s1[]) {


int len = myStrlen(s);
int i = 0;
while (s1[i] != '\0') {
s[len++] = s1[i++];
}
s[len] = '\0';
}

void ChenChuoiTaiVitriK(char s[], char s1[], int k) {


int len = myStrlen(s);
char temp[MAX];
int i = 0;

for (i = k; i < len; i++) {


temp[i - k] = s[i];
}
temp[i - k] = '\0';

int j = 0;
for (i = k; s1[j] != '\0'; i++, j++) {
s[i] = s1[j];
}

j = 0;
while (temp[j] != '\0') {
s[i++] = temp[j++];
}
s[i] = '\0';
}

void Chuanhoa(char s[]) {


char result[MAX] = "";
int len = myStrlen(s);
int i = 0;

while (i < len) {


while (i < len && s[i] == ' ') i++;
char temp[MAX] = "";
int j = 0;
while (i < len && s[i] != '.') {
if (!(s[i] == ' ' && (j == 0 || temp[j - 1] == ' '))) {
temp[j++] = s[i];
}
i++;
}
temp[j] = '\0';
myStrcat(result, temp);

if (i < len && s[i] == '.') {


int res_len = myStrlen(result);
if (res_len > 0 && result[res_len - 1] == ' ') {
result[res_len - 1] = '\0';
}
myStrcat(result,".");
i++;
}

while (i < len && s[i] == ' ') i++;


if (i < len) {
myStrcat(result," ");
}
}

int res_len = myStrlen(result);


if (res_len > 0 && result[res_len - 1] == ' ') {
result[res_len - 1] = '\0';
}

myStrcpy(s, 0 , result, 0 );
}
8.3
int myStrlen(char s[], int k = 0)
{
int length = 0;
while (s[k + length] != '\0') length++;
return length;
}

void myMemmove(char s[], int vt, int k)


{
int l = myStrlen(s, 0);
for (int i = vt; i <= l - k; i++) s[i] = s[i + k];
}

void Chuanhoa(char s[])


{
while (s[0] == ' ') myMemmove(s, 0, 1);
int l = myStrlen(s, 0);
while (l > 0 && s[l - 1] == ' ') s[l - 1] = '\0', l--;
for (int i = 0; s[i] != '\0'; i++) if (s[i] == ' ' && s[i + 1] == ' ') myMemmove(s, i,
1), i--;
s[0] = toupper(s[0]);
for (int i = 1; i < l; i++)
{
if (s[i] != ' ')
{
if (s[i - 1] == ' ') s[i] = toupper(s[i]);
else s[i] = tolower(s[i]);
}
}
}
8.4
int myStrcmp(char s1[MAX], char s2[MAX])
{
int i = 0;
while (s1[i] != '\0' || s2[i] != '\0')
{
if (s1[i] != s2[i]) return s1[i] - s2[i];
i++;
}
return 0;
}
int myStrlen(char s[], int k = 0)
{
int length = 0;
while (s[k + length] != '\0') length++;
return length;
}
void DemKyTu(char s[])
{
int freq[256] = {0};
for (int i = 0; i < myStrlen(s); i++) freq[(unsigned char)s[i]]++;
int check[256] = {0};
for (int i = 0; i < myStrlen(s); i++) if (freq[(int)s[i]] && !check[(int)s[i]]) cout <<
s[i] << ": " << freq[(int)s[i]] << endl, check[(int)s[i]] = 1;
}
8.5
int myStrlen(char s[], int k = 0)
{
int l = 0;
while (s[k + l] != '\0') l++;
return l;
}

int myStrcmp(char s1[], char s2[])


{
int i = 0;
while(s1[i] != '\0' && s2[i] != '\0') {if (s1[i] != s2[i]) return s1[i] - s2[i]; i++;}
return s1[i] - s2[i];
}

void myStrcpy(char s[], int vt, char s1[], int k)


{
for (int i = 0; i < k; i++) s1[i] = s[vt + i];
s1[k] = '\0';
}

void DemTieng(char s1[])


{
char words[MAX][MAX]; // lưu các từ xuất hiện trong chuỗi
int count[MAX] = {0}; // lưu số lần xuất hiện tương ứng của
từng từ
int wordCount = 0; // tổng số từ khác nhau trong words[MAX]
int i = 0, len = myStrlen(s1, 0);
while (i < len)
{
while (isspace(s1[i]) && s1[i] != '\0') i++; // bỏ khoảng trắng đầu
chuỗi
if (s1[i] == '\0') break;
int start = i; // vị trà từ hiện tại
while (!isspace(s1[i]) && s1[i] != '\0') i++; // tăng i tới khi gặp khoảng
trắng
char word[MAX];
myStrcpy(s1, start, word, i - start); // cop s1 từ start đén i và o word
bool check = false;
for (int j = 0; j < wordCount; j++) if (myStrcmp(words[j], word) == 0) {count[j]
++, check = true; break;} // kiểm tra từ xuất hiện chưa
int l = myStrlen(word, 0);
if (!check) myStrcpy(word, 0, words[wordCount], l), count[wordCount++] = 1;
}
for (int j = 0; j < wordCount; j++) cout << words[j] << ": " << count[j] << '\n';
}
8.7
int myStrlen(char s[], int k = 0)
{
int l = 0;
while (s[l] != '\0') l++;
return l;
}
void myStrcpy(char s[], int vt, char s1[], int k)
{
for (int i = 0; i < k; i++) s1[i] = s[vt + i];
s1[k] = '\0';
}

bool myStrcat(char s1[], char s2[])


{
int len1 = myStrlen(s1, 0), len2 = myStrlen(s2, 0);
if (len1 + len2 >= MAX) return false; //
for (int i = 0; i < len2; i++) s1[len1 + i] = s2[i];
s1[len1 + len2] = '\0';
return true;
}

void mySubstr(char s[], int b, int count, char ss[])


{
for (int i = 0; i < count; i++) ss[i] = s[b + i];
ss[count] = '\0';
}

int myStrcmp(char s1[], char s2[])


{
int i = 0;
while (s1[i] != '\0' && s2[i] != '\0')
{
if (s1[i] != s2[i]) return s1[i] - s2[i];
i++;
}
return s1[i] - s2[i];
}

void StringReverse(char st[])


{
int l = myStrlen(st, 0), end = l - 1;
char ans[MAX] = "";

while (end >= 0)


{
while (end >= 0 && st[end] == ' ') end--;
if (end < 0) break;

int start = end;


while (start >= 0 && st[start] != ' ') start--;

char word[MAX];
mySubstr(st, start + 1, end - start, word);

if (myStrlen(ans, 0) > 0) myStrcat(ans, " ");


myStrcat(ans, word);

// Chuẩn bị cho từ tiếp theo


end = start - 1;
}

if (myStrlen(ans, 0) > 0) {
myStrcpy(ans, 0, st, myStrlen(ans, 0));
} else {
st[0] = '\0';
}
}
8.8
ChenChuoiTaiVitriK(s, s1, k);
}
}

int myStrlen(char s[], int k = 0)


{
int l = 0;
while (s[k + l] != '\0') l++;
return l;
}

int myStrcmp(char s1[], char s2[])


{
int i = 0;
while(s1[i] != '\0' && s2[i] != '\0') {if (s1[i] != s2[i]) return s1[i] - s2[i]; i++;}
return s1[i] - s2[i];
}

void myStrcpy(char s[], int vt, char s1[], int k)


{
for (int i = 0; i < k; i++) s1[i] = s[vt + i];
s1[k] = '\0';
}

void ChenChuoiTaiVitriK(char s[], char s1[], int k)


{
int lens = myStrlen(s, 0), lens1 = myStrlen(s1, 0);
for (int i = lens - 1; i >= k; i--) s[i + lens1] = s[i];
for (int i = 0; i < lens1; i++) s[k + i] = s1[i];
s[lens1 + lens] = '\0';
cout << s;
}
8.9
int myStrcmp(char s1[], char s2[]) {
int i = 0;
while (s1[i] != '\0' || s2[i] != '\0') {
if (s1[i] < s2[i]) return -1;
if (s1[i] > s2[i]) return 1;
i++;
}
return 0;
}
8.10
if (kt) cout << s1 << s2;
else cout << "Khong noi duoc. Khong du bo nho.";
}

int myStrlen(char s[])


{
int l = 0;
while (s[l] != '\0') l++;
return l;
}

bool myStrcat(char s1[], char s2[])


{
if (myStrlen(s1) + myStrlen(s2) > 254) return false;
return true;
}
9.1
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin >> n;
int a[n + 5];
for (int i = 0; i < n; i++)
{
cin >> a[i];
if (i % 2 == 1) cout << a[i] << " ";
}
}
9.2
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin >> n;
int a[n + 5], maxx = 0, ans = 0;
for (int i = 0; i < n; i++) cin >> a[i], maxx = max(maxx, a[i]);
for (int i = 0; i < n; i++) if (maxx == a[i]) ans++;
cout << maxx << '\n' << ans;
}
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n, m;
cin >> n;
int a[n + 5];
for (int i = 1; i <= n; i++) cin >> a[i];
cin >> m;
int b[m + 5];
for (int i = 1; i <= m; i++) cin >> b[i];
int c[n + m + 5];
for (int i = 1; i <= n; i++) c[i] = a[i];
for (int i = 1; i <= m; i++) c[i + n] = b[i];
for (int i = 1; i <= n + m; i++) cout << c[i] << " ";
}
9.5
int myStrlen(char *s)
{
int l = 0;
while (s[l] != '\0') l++;
return l;
}

char* myStrcat(char *s1, char *s2)


{
int l1 = myStrlen(s1), l2 = myStrlen(s2);
for (int i = 0; i <= l2; i++) s1[l1 + i] = s2[i];
return s1;
}
9.6
#include <iostream>
#include <string>
using namespace std;

void chenChuoi(string &s, const string &s1, int k) {


if (k < 0 || k > s.length()) {
cout << "Vi tri " << k << " khong thoa dieu kien." << endl;
} else {
s.insert(k, s1);
cout << s << endl;
}
}

int main() {
string s, s1;
int k;

getline(cin, s);

getline(cin, s1);

cin >> k;

chenChuoi(s, s1, k);

return 0;
}

You might also like