2.4 k so duong canh nhau
Bài tâp: Nhâp dãy sô thuc a và sô nguyên duong k. Xét xem trong dãy:
a) Có k sô duong dung canh nhau hay không?
b) Có k so dung canh nhau lâp thành câp sô công hay không?
*/
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
void Nhapdayso(int N, float *a){
int i;
if(a != NULL){
printf("Ban hay nhap %d phan tu trong day so:
", N);
for(i=0; i<N; i++){
scanf("%f", &a[i]);
}
}
else printf("Khong du bo nho!!
");
}
//Cau a):
void KtraKsoduong(int N, float *a){
int i, d=0, k;
printf("Ban muon kiem tra day co bao nhieu so duong dung canh nhau:
");
scanf("%d", &k);
for(i=0; i<N; i++){
if(a[i]>0){
d++;
if(d == k){
printf("Day da cho co %d so duong lien tiep dung canh nhau!
", k);
break;
}
}
else d=0;
}
if(d != k) printf("Day da cho khong co %d so duong lien tiep!
", k);
}
//Cau b):
void KtraKcapsocong(int N, float *a){
int i, d=0, k;
printf("Ban muon kiem tra bao nhieu so trong dau lap thanh cap so cong:
");
scanf("%d", &k);
for(i=0; i<N-2; i++){
if(a[i+1] - a[i] == a[i+2] - a[i+1]){
d++;
if(d == k-1){
printf("Day da cho co %d so lien tiep lap thanh cap so cong!
", k);
break;
}
}
else d=0;
}
if(d != k-1) printf("Day da cho khong co %d so lien tiep lap thanh cap so cong!
", k);
}
main()
{
int N;
float *a;
printf("Ban muon nhap day so co bao nhieu phan tu?
");
scanf("%d", &N);
a = malloc(N*sizeof(float));
Nhapdayso(N, a);
KtraKsoduong(N, a);
KtraKcapsocong(N, a);
getch();
free(a);
return 0;
}
Bạn đang đọc truyện trên: AzTruyen.Top